-
-
Notifications
You must be signed in to change notification settings - Fork 20
Open
Description
Build from source fails on Arch Linux (probably due to newer build tools) with following error:
bison version: 3.8.2
gcc: 15.2.1 20250813
$make
bison -ld -o pcalc.c pcalc.y
pcalc.y: warning: 67 shift/reduce conflicts [-Wconflicts-sr]
pcalc.y: warning: 37 reduce/reduce conflicts [-Wconflicts-rr]
pcalc.y: note: rerun with option '-Wcounterexamples' to generate conflict counterexamples
pcalc.y:75.13-16: warning: rule useless in parser due to conflicts [-Wother]
75 | | list
| ^~~~
cc -ggdb -Wall -DVERSION='"6"' -c -o pcalc.o pcalc.c
pcalc.c: In function ‘yyparse’:
pcalc.c:1224:40: error: too many arguments to function ‘(yyvsp + -16)->sym->u.iptr’; expected 0, have 1
1224 | { (*((yyvsp[-1].sym)->u.iptr))((yyvsp[0].sym)->u.str) ; }
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~
In file included from pcalc.c:102:
symbol.h:17:25: note: declared here
17 | int (*iptr)(); /* if IBUILTIN */
| ^~~~
pcalc.c:1232:40: error: too many arguments to function ‘(yyvsp + -16)->sym->u.iptr’; expected 0, have 1
1232 | { (*((yyvsp[-1].sym)->u.iptr))((yyvsp[0].sym)->u.val) ; }
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~
symbol.h:17:25: note: declared here
17 | int (*iptr)(); /* if IBUILTIN */
| ^~~~
pcalc.c:1236:40: error: too many arguments to function ‘(yyvsp + -16)->sym->u.iptr’; expected 0, have 1
1236 | { (*((yyvsp[-1].sym)->u.iptr))((yyvsp[0].val)) ; }
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~
symbol.h:17:25: note: declared here
17 | int (*iptr)(); /* if IBUILTIN */
| ^~~~
pcalc.c:1260:54: error: too many arguments to function ‘(yyvsp + -48)->sym->u.ptr’; expected 0, have 1
1260 | { (yyval.val) = (*((yyvsp[-3].sym)->u.ptr))((yyvsp[-1].val)) ; }
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~
symbol.h:16:30: note: declared here
16 | long double (*ptr)(); /* if BUILTIN */
| ^~~
pcalc.c:1264:54: error: too many arguments to function ‘(yyvsp + -16)->sym->u.ptr’; expected 0, have 1
1264 | { (yyval.val) = (*((yyvsp[-1].sym)->u.ptr))((yyvsp[0].val)) ; }
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~
symbol.h:16:30: note: declared here
16 | long double (*ptr)(); /* if BUILTIN */
| ^~~
make: *** [<builtin>: pcalc.o] Error 1
Metadata
Metadata
Assignees
Labels
No labels