Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 1 Apr 2001 15:51:17 +0200 (CEST)
From:      Marcin Gryszkalis <dagoon@math.uni.lodz.pl>
To:        David O'Brien <obrien@FreeBSD.org>
Cc:        freebsd-alpha@freebsd.org
Subject:   Re: gperf segfail on 4.3b
Message-ID:  <Pine.BSF.4.21.0104011540330.45419-100000@imul.math.uni.lodz.pl>
In-Reply-To: <20010331151815.B73740@dragon.nuxi.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Yesterday David O'Brien wrote:

> On Sun, Apr 01, 2001 at 12:55:14AM +0200, Marcin Gryszkalis wrote:
> > > > > > gperf -p -j1 -i 1 -g -o -t -G -N is_reserved_word -k1,3,$
> > > > > > Segmentation fault - core dumped
> > > My DS-20 RELENG_4 (ie, 4.3-RC) `make world' completed just fine.
> > And how is your AlphaStation250? fine too? (I hope not ;) )
> Yes, the build completed just fine.

SO, I started digging... 
What I found is:

gperf/tests$ ../src/gperf -p -j1 -g -o -t -N is_reserved_word -k1,3,$ c-parse.gperf
[core dumped info]

ldah# gdb ../src/gperf gperf.core
[...]
Program terminated with signal 11, Segmentation fault.
#0  0x12000dbc8 in strcspn1 (s=0x12002e168 "__alignof, ALIGNOF, NORID",
    reject=0x0) at ./key-list.cc:162
162       for (scan = s; *scan; scan++)
(gdb) bt
#0  0x12000dbc8 in strcspn1 (s=0x12002e168 "__alignof, ALIGNOF, NORID",
    reject=0x0) at ./key-list.cc:162
#1  0x1200069f4 in parse_line (line=0x12002e168 "__alignof, ALIGNOF,
NORID",delimiters=0x0) at ./key-list.cc:335
#2  0x120006e20 in Key_List::read_keys (this=0x11ffba10) at
./key-list.cc:376
#3  0x120004058 in Gen_Perf::Gen_Perf (this=0x11ffba10) at
./gen-perf.cc:39
#4  0x120003dec in main (argc=10, argv=0x11ffbae8) at ./main.cc:62

As we can see above, delimiters are NULL, and they come NULL from 
option (class Options), as because of [can't-see-any-reason] constructor
of Options class is not called (in constructor default delimiters are
set). Any idea why constructor may be not called???
In options.cc there'ss just 'Options option;'

Spec. delimiters to gperf (-e option) helps but not much.

Oh, btw, destructor is not called too.

greetings
marcin


--
  .d$$$$b,  $d$$$$b. .d$$$$b, Marcin Gryszkalis <dagoon@math.uni.lodz.pl>
  $$'  `""  $$'  `"' $$'  `$$ 
  $$.  .ss  $$       $$    $$ (...) QED.  (QED translates from the Latin
  `"8$$8"'  88       88    88                     as "So what?")




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0104011540330.45419-100000>