Re: Testsuite summary for GNU Bison 3.8.2 : FAIL 2
Dennis Clarke <[email protected]> Wed, 13 Oct 2021 21:40:48 -0400
| Newsgroups | gmane.comp.parsers.bison.bugs |
|---|---|
| Message-ID | <[email protected]> |
On 10/13/21 14:55, Akim Demaille wrote: > Hi Dennis, > >> Le 13 oct. 2021 à 11:23, Dennis Clarke <[email protected]> a écrit : >> >> Sorry, no joy. > > :( > > Could you replace examples/c/mfcalc/mfcalc.y with the attached one, run "make examples/c/mfcalc/mfcalc" (or "make check-examples") and then run this please? > > echo 'a = 256' | ./examples/c/mfcalc/mfcalc -p > > I don't need the logs of make check, just this command. > Well for the sake of being really verbose and complete let me say that the bug has moved to a whole other line but we see the same behavior : beta $ beta $ cat ./test-suite.log ======================================= GNU Bison 3.8.2: ./test-suite.log ======================================= # TOTAL: 8 # PASS: 4 # SKIP: 2 # XFAIL: 0 # FAIL: 2 # XPASS: 0 # ERROR: 0 .. contents:: :depth: 2 FAIL: examples/c/mfcalc/mfcalc ============================== checking for diff --strip-trailing-cr... diff: illegal option -- strip-trailing-cr usage: diff [-bitw] [-c | -e | -f | -h | -n | -u] file1 file2 diff [-bitw] [-C number | -U number] file1 file2 diff [-bitw] [-D string] file1 file2 diff [-bitw] [-c | -e | -f | -h | -n | -u] [-l] [-r] [-s] [-S name] directory1 directory2 checking for diff --strip-trailing-cr... mfcalc: FAIL: 1 (expected status: 0, effective: 139) putsym: atan (100003b82) => ./examples/test: line 50: 23820 Segmentation Fault (core dumped) "$abs_medir/$me" "$@" mfcalc: FAIL: 2 (expected status: 0, effective: 139) putsym: atan (100003b82) => ./examples/test: line 50: 23830 Segmentation Fault (core dumped) "$abs_medir/$me" "$@" mfcalc: FAIL: 3 (expected status: 0, effective: 139) putsym: atan (100003b82) => ./examples/test: line 50: 23839 Segmentation Fault (core dumped) "$abs_medir/$me" "$@" mfcalc: FAIL: 4 (expected status: 0, effective: 139) putsym: atan (100003b82) => ./examples/test: line 50: 23848 Segmentation Fault (core dumped) "$abs_medir/$me" "$@" mfcalc: FAIL: 5 (expected status: 0, effective: 139) putsym: atan (100003b82) => ./examples/test: line 50: 23858 Segmentation Fault (core dumped) "$abs_medir/$me" "$@" FAIL examples/c/mfcalc/mfcalc.test (exit status: 1) SKIP: examples/c/bistromathic/bistromathic ========================================== checking for diff --strip-trailing-cr... diff: illegal option -- strip-trailing-cr usage: diff [-bitw] [-c | -e | -f | -h | -n | -u] file1 file2 diff [-bitw] [-C number | -U number] file1 file2 diff [-bitw] [-D string] file1 file2 diff [-bitw] [-c | -e | -f | -h | -n | -u] [-l] [-r] [-s] [-S name] directory1 directory2 checking for diff --strip-trailing-cr... ./examples/test: line 50: 23959 Segmentation Fault (core dumped) "$abs_medir/$me" "$@" checking for readline output... 1,3d0 < > 0 < 0 < > 1d0 < 0 SKIP: this is not the GNU Readline we expect SKIP examples/c/bistromathic/bistromathic.test (exit status: 77) FAIL: examples/c/glr/c++-types ============================== checking for diff --strip-trailing-cr... diff: illegal option -- strip-trailing-cr usage: diff [-bitw] [-c | -e | -f | -h | -n | -u] file1 file2 diff [-bitw] [-C number | -U number] file1 file2 diff [-bitw] [-D string] file1 file2 diff [-bitw] [-c | -e | -f | -h | -n | -u] [-l] [-r] [-s] [-S name] directory1 directory2 checking for diff --strip-trailing-cr... c++-types: FAIL: 1 (expected status: 0, effective: 139) ./examples/test: line 50: 24060 Segmentation Fault (core dumped) "$abs_medir/$me" "$@" FAIL examples/c/glr/c++-types.test (exit status: 1) SKIP: examples/c/reccalc/reccalc ================================ checking for diff --strip-trailing-cr... diff: illegal option -- strip-trailing-cr usage: diff [-bitw] [-c | -e | -f | -h | -n | -u] file1 file2 diff [-bitw] [-C number | -U number] file1 file2 diff [-bitw] [-D string] file1 file2 diff [-bitw] [-c | -e | -f | -h | -n | -u] [-l] [-r] [-s] [-S name] directory1 directory2 checking for diff --strip-trailing-cr... SKIP: gimme one seq SKIP examples/c/reccalc/reccalc.test (exit status: 77) beta $ Where I see a bunch of SIGSEGV coredumps and they all look the same : beta $ beta $ dbx examples/c/mfcalc/mfcalc time_1634173844-pid_23820-uid_16411-gid_20002-fid_mfcalc.core Reading mfcalc core file header read successfully Reading ld.so.1 Reading libm.so.2 Reading libc.so.1 program terminated by signal SEGV (no mapping at the fault address) 0xffffffff7eb3c890: strlen+0x0050: ld [%o2], %o1 Current function is putsym 1453 name, name, res->name, res->name); (dbx) where [1] strlen(0x105c30, 0x5, 0x105c30, 0x1c8c, 0x0, 0x14c), at 0xffffffff7eb3c890 [2] _ndoprnt(0x100003bb5, 0xffffffff7fffefd0, 0xffffffff7ebab1b8, 0xffffffff7fffe959, 0x105c30, 0x100003bb4), at 0xffffffff7ebacf64 [3] _fprintf(0xffffffff7ed49740, 0x100003ba0, 0x0, 0x0, 0x0, 0xffffffff7ed3e000), at 0xffffffff7ebaf028 =>[4] putsym(name = 0x100003b82 "atan", sym_type = 260), line 1453 in "mfcalc.c" [5] init_table(), line 1433 in "mfcalc.c" [6] main(argc = 2, argv = 0xffffffff7ffff278), line 1547 in "mfcalc.c" (dbx) list 1453 name, name, res->name, res->name); 1454 res->type = sym_type; 1455 res->value.var = 0; /* Set value to 0 even if fun. */ 1456 res->next = sym_table; 1457 sym_table = res; 1458 return res; 1459 } 1460 1461 symrec * 1462 getsym (char const *name) (dbx) print &name &name = 0xffffffff7ffff018 (dbx) print name name = 0x100003b82 "atan" (dbx) print &res &res = 0xffffffff7ffff000 (dbx) print res res = 0x100104420 (dbx) print *res *res = { name = 0x105c30 "<bad address 0x0000000000105c30>" type = 0 value = { var = 0.0 fun = (nil) } next = (nil) } (dbx) quit beta $ So lets get on with your specific test now ( I use tn to get the UNIX timenow ) : beta $ tn 1634175383 beta $ tn; echo 'a = 256' | ./examples/c/mfcalc/mfcalc -p 1634175420 putsym: atan (100003b82) => ksh: 24359 Segmentation Fault(coredump) beta $ So I get a coredump with a timestamp ( I have a pile of them now! ) which is 1634175420 : beta $ dbx examples/c/mfcalc/mfcalc time_1634175420-pid_24359-uid_16411-gid_20002-fid_mfcalc.core Reading mfcalc core file header read successfully Reading ld.so.1 Reading libm.so.2 Reading libc.so.1 program terminated by signal SEGV (no mapping at the fault address) 0xffffffff7eb3c890: strlen+0x0050: ld [%o2], %o1 Current function is putsym 1453 name, name, res->name, res->name); (dbx) where [1] strlen(0x105c30, 0x5, 0x105c30, 0x1c8c, 0x0, 0x14c), at 0xffffffff7eb3c890 [2] _ndoprnt(0x100003bb5, 0xffffffff7ffff450, 0xffffffff7ebab1b8, 0xffffffff7fffedd9, 0x105c30, 0x100003bb4), at 0xffffffff7ebacf64 [3] _fprintf(0xffffffff7ed49740, 0x100003ba0, 0x0, 0x0, 0x0, 0xffffffff7ed3e000), at 0xffffffff7ebaf028 =>[4] putsym(name = 0x100003b82 "atan", sym_type = 260), line 1453 in "mfcalc.c" [5] init_table(), line 1433 in "mfcalc.c" [6] main(argc = 2, argv = 0xffffffff7ffff718), line 1547 in "mfcalc.c" (dbx) list 1453 name, name, res->name, res->name); 1454 res->type = sym_type; 1455 res->value.var = 0; /* Set value to 0 even if fun. */ 1456 res->next = sym_table; 1457 sym_table = res; 1458 return res; 1459 } 1460 1461 symrec * 1462 getsym (char const *name) (dbx) print res->name res->name = 0x105c30 "<bad address 0x0000000000105c30>" (dbx) print *res *res = { name = 0x105c30 "<bad address 0x0000000000105c30>" type = 0 value = { var = 0.0 fun = (nil) } next = (nil) } (dbx) quit beta $ So this may be progress ... not sure. -- Dennis Clarke RISC-V/SPARC/PPC/ARM/CISC UNIX and Linux spoken GreyBeard and suspenders optional