From: Stefan S. <se...@sy...> - 2005-02-01 14:07:56
|
Altac Edena wrote: > Hi, > FYI, the 'elaboration-test-glue' test program core > dump when fed with the following code : > > class A { > void f() { > int x(*this); > } > }; > > * I've reduced the test case as much as possible, but > it's originating from STL stuff. > * The occ-core source is taken from CVS HEAD, today. > * The backtrace is : > > #0 0x0049d1bd in Opencxx::Ptree::Cdr() (this=0x0) at > occ-core/parser/Ptree.h:113 > #1 0x00473d81 in > Opencxx::PtreeUtil::SubstSublist(Opencxx::Ptree*, > Opencxx::Ptree*, Opencxx::Ptree*) (newsub=0xa05c3b0, > oldsub=0xa05a790, lst=0x0) at > occ-core/parser/PtreeUtil.cc:613 > #2 0x00473dac in > Opencxx::PtreeUtil::SubstSublist(Opencxx::Ptree*, > Opencxx::Ptree*, Opencxx::Ptree*) (newsub=0xa05c3b0, > oldsub=0xa05a790, lst=0xa05a7c0) at > occ-core/parser/PtreeUtil.cc:613 [...] the above snippet shows that the SubstSublist() function dereferences a nil ptree node, i.e. it finds a parse tree it doesn't expect. The simplest thing to do is probably to call the 'Display()' member of one of the immediate parents to print out the content of the relevant portion of the parse tree. Then you have to search for 'nil' elements and figure out whether there are any which occ doesn't expect. At least that may help you reproducing a smaller test case that still lets occ fall over. I'v just tried compiling occ-core myself (on fedora core 3) but got a bunch of errors during the build. So I can't even reproduce your test :-( Regards, Stefan |