Skip Menu |
 

Subject: kerberos build fails with latest bison
From: "Norm Green" <norm.green@gemtalksystems.com>
To: krb5-bugs@mit.edu
Date: Fri, 17 Jul 2020 10:49:42 -0700
Download (untitled) / with headers
text/plain 3.1KiB
On a new AIX 7.2 machine with the latest bison, I get these errors
building kerberos 1.18.2 :


bison -y  getdate.y
getdate.y:191.25-28: warning: POSIX yacc reserves %type to nonterminals
[-Wyacc]
  191 | %type   <Number>        tDAY tDAYZONE tMINUTE_UNIT tMONTH
tMONTH_UNIT
      |                         ^~~~
getdate.y:191.30-37: warning: POSIX yacc reserves %type to nonterminals
[-Wyacc]
  191 | %type   <Number>        tDAY tDAYZONE tMINUTE_UNIT tMONTH
tMONTH_UNIT
      |                              ^~~~~~~~
getdate.y:191.39-50: warning: POSIX yacc reserves %type to nonterminals
[-Wyacc]
  191 | %type   <Number>        tDAY tDAYZONE tMINUTE_UNIT tMONTH
tMONTH_UNIT
      |                                       ^~~~~~~~~~~~
getdate.y:191.52-57: warning: POSIX yacc reserves %type to nonterminals
[-Wyacc]
  191 | %type   <Number>        tDAY tDAYZONE tMINUTE_UNIT tMONTH
tMONTH_UNIT
      | ^~~~~~
getdate.y:191.59-69: warning: POSIX yacc reserves %type to nonterminals
[-Wyacc]
  191 | %type   <Number>        tDAY tDAYZONE tMINUTE_UNIT tMONTH
tMONTH_UNIT
| ^~~~~~~~~~~
getdate.y:192.25-33: warning: POSIX yacc reserves %type to nonterminals
[-Wyacc]
  192 | %type   <Number>        tSEC_UNIT tSNUMBER tUNUMBER tZONE
      |                         ^~~~~~~~~
getdate.y:192.35-42: warning: POSIX yacc reserves %type to nonterminals
[-Wyacc]
  192 | %type   <Number>        tSEC_UNIT tSNUMBER tUNUMBER tZONE
      |                                   ^~~~~~~~
getdate.y:192.44-51: warning: POSIX yacc reserves %type to nonterminals
[-Wyacc]
  192 | %type   <Number>        tSEC_UNIT tSNUMBER tUNUMBER tZONE
      |                                            ^~~~~~~~
getdate.y:192.53-57: warning: POSIX yacc reserves %type to nonterminals
[-Wyacc]
  192 | %type   <Number>        tSEC_UNIT tSNUMBER tUNUMBER tZONE
      | ^~~~~
getdate.y:193.25-33: warning: POSIX yacc reserves %type to nonterminals
[-Wyacc]
  193 | %type   <Meridian>      tMERIDIAN o_merid
      |                         ^~~~~~~~~
getdate.y: warning: 4 shift/reduce conflicts [-Wconflicts-sr]
gmake[2]: *** [<builtin>: getdate.c] Broken pipe
gmake[2]: Leaving directory
'/monsoon1/users/normg/gs353/slow9/kerberos/src/kadmin/cli'
gmake[1]: *** [Makefile:865: all-recurse] Error 1
gmake[1]: Leaving directory
'/monsoon1/users/normg/gs353/slow9/kerberos/src/kadmin'
gmake: *** [Makefile:1546: all-recurse] Error 1
Build failed

normg@monsoon>bison --version
bison (GNU Bison) 3.5.1
Written by Robert Corbett and Richard Stallman.

Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Older versions of bison do not show this problem (bison 3.0.4 works fine).

Norm Green
Follow-up mail from the reporter, from the moderation queue:

Update: kerberos build does not fail due to these warnings. Turns out 
bison was not installed correctly.

However, these same warnings still occur even when bison is correctly 
installed, but they are not fatal and build succeeds.
Subject: git commit
From: ghudson@mit.edu

Fix token and type declarations in getdate.y

Bison 3.5 adds a POSIX yacc compliance warning that %type should only
be applied to non-terminals. Use %token for terminals in getdate.y.
Reported by Norm Green.

https://github.com/krb5/krb5/commit/d3356bc42191c1896ab06835a2fb245e00471420
Author: Greg Hudson <ghudson@mit.edu>
Commit: d3356bc42191c1896ab06835a2fb245e00471420
Branch: master
src/kadmin/cli/getdate.y | 10 ++++------
1 files changed, 4 insertions(+), 6 deletions(-)