From https://bugs.gnu.org/71425.
* t/yacc-deleted-headers.sh: Declare yyparse before use.
* t/yacc-depend.sh: Likewise.
* t/yacc-mix-c-cxx.sh: Likewise.
* t/yacc-d-basic.sh: Likewise. Use void instead of empty parameter
list.
* t/yacc-depend2.sh: Likewise.
* NEWS: mention this.
* THANKS: add Collin.
- tests: avoid some declaration conflicts for lex et al. on SunOS.
(bug#34151 and others)
+ - tests: declare yyparse before use and use (void) parameter lists
+ instead of (), to placate C23. (bug#71425)
+
- Typos in code and other doc fixes. (bug#68003, bug#68004, et al.)
* Obsolescence:
Claudio Fontana sick_soul@yahoo.it
Clifford Wolf clifford@clifford.at
Colin Watson cjwatson@ubuntu.com
+Collin Funk collin.funk1@gmail.com
Colomban Wendling lists.ban@herbesfolles.org
Dagobert Michelsen dam@opencsw.org
Daiki Ueno ueno@unixuser.org
cat > foo/parse.y << 'END'
%{
#include "parse.h"
-int yylex () { return 0; }
+int yylex (void) { return 0; }
void yyerror (const char *s) {}
%}
%%
cat > foo/main.c << 'END'
#include "parse.h"
+extern int yyparse (void);
int main ()
{
return yyparse ();
cat > main1.c << 'END'
#include "parse1.h"
+extern int yyparse (void);
int main (void)
{
return ZARDOZ + yyparse ();
cat > main.c << 'END'
#include "foo.h"
+extern int yyparse (void);
int main(void)
{
return yyparse ();
cat > foo.y << 'END'
%{
-int yylex () { return 0; }
+int yylex (void) { return 0; }
void yyerror (const char *s) {}
%}
%token TOKEN
cat > main.c << 'END'
#include "foo.h"
+extern int yyparse (void);
int main(void)
{
return yyparse ();
cat > 1.c <<'END'
#include "p.h"
+extern int yyparse (void);
int main ()
{
int new = ZARDOZ;
END
cat > 2.c <<'END'
+extern int yyparse (void);
int main ()
{
int yyparse ();