bug-bison
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Testsuite summary for GNU Bison 3.8.2 : FAIL 2


From: Dennis Clarke
Subject: Re: Testsuite summary for GNU Bison 3.8.2 : FAIL 2
Date: Wed, 13 Oct 2021 21:40:48 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:94.0) Gecko/20100101 Thunderbird/94.0

On 10/13/21 14:55, Akim Demaille wrote:
> Hi Dennis,
> 
>> Le 13 oct. 2021 à 11:23, Dennis Clarke <dclarke@blastwave.org> 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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]