git: 5dda778db634 - main - Use correct function declaration for yyerror

From: Warner Losh <imp_at_FreeBSD.org>
Date: Mon, 03 Jun 2024 18:14:54 UTC
The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=5dda778db63407214394c3cf63fb1312a4981024

commit 5dda778db63407214394c3cf63fb1312a4981024
Author:     Dapeng Gao <dg612@cam.ac.uk>
AuthorDate: 2024-06-03 17:30:52 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-06-03 18:14:10 +0000

    Use correct function declaration for yyerror
    
    According to the POSIX standard at
    https://pubs.opengroup.org/onlinepubs/9699919799/utilities/yacc.html
    `yyerror` should return `int`. Add unreachable since errx never returns.
    
    Reviewed by:    imp, kib
    Differential Revision:  https://reviews.freebsd.org/D45447
---
 usr.sbin/config/config.y | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/usr.sbin/config/config.y b/usr.sbin/config/config.y
index a5a9e1546c36..148959fbff2e 100644
--- a/usr.sbin/config/config.y
+++ b/usr.sbin/config/config.y
@@ -88,7 +88,7 @@ int	maxusers;
 
 #define ns(s)	strdup(s)
 int include(const char *, int);
-void yyerror(const char *s);
+int yyerror(const char *s);
 int yywrap(void);
 
 static void newdev(char *name);
@@ -299,11 +299,13 @@ NoDevice:
 
 %%
 
-void
+int
 yyerror(const char *s)
 {
 
 	errx(1, "%s:%d: %s", yyfile, yyline + 1, s);
+	__unreachable();
+	return (0);
 }
 
 int