Victor Fusco
2011-06-05 20:51:32 UTC
Hi,
I am receiving a segfault when trying to generate code for a valuetype.
I think it has something to do with the valuetype supporting an
interface that is an alias.
I have isolated the problem using the two idl files attached. You can
reproduce it running "idl -I. myidl2.idl".
I also attached a patch that tries to solve the problem, but I am not
sure about it's correctness. Can you please take a look?
The gdb backtrace shows this:
Program received signal SIGSEGV, Segmentation fault.
IDLParser::collectValueDcl (this=0x7fffffffceb0, con=0x73b810,
node=0x728740) at idlparser.cc:2247
2247 if (sif->def_kind() == CORBA::dk_Interface) {
(gdb) bt
#0 IDLParser::collectValueDcl (this=0x7fffffffceb0, con=0x73b810,
node=0x728740) at idlparser.cc:2247
#1 0x0000000000438b6b in IDLParser::scan (this=0x7fffffffceb0,
con=0x73b810, node=<optimized out>) at idlparser.cc:272
#2 0x0000000000439e03 in IDLParser::collectModule (this=0x7fffffffceb0,
con=0x737030, node=0x7288c0) at idlparser.cc:807
#3 0x0000000000438b6b in IDLParser::scan (this=0x7fffffffceb0,
con=0x737030, node=<optimized out>) at idlparser.cc:272
#4 0x0000000000439e03 in IDLParser::collectModule (this=0x7fffffffceb0,
con=0x7327a0, node=0x728a00) at idlparser.cc:807
#5 0x0000000000438b6b in IDLParser::scan (this=0x7fffffffceb0,
con=0x7327a0, node=<optimized out>) at idlparser.cc:272
#6 0x000000000043a0ea in IDLParser::collect (this=0x7fffffffceb0,
cont=0x7327a0, root=0x728cc0) at idlparser.cc:89
#7 0x000000000041c5bd in main (argc=3, argv=<optimized out>) at
main.cc:189
Thanks,
Victor Fusco
"The future is here. It's just not widely distributed yet."
William Gibson
I am receiving a segfault when trying to generate code for a valuetype.
I think it has something to do with the valuetype supporting an
interface that is an alias.
I have isolated the problem using the two idl files attached. You can
reproduce it running "idl -I. myidl2.idl".
I also attached a patch that tries to solve the problem, but I am not
sure about it's correctness. Can you please take a look?
The gdb backtrace shows this:
Program received signal SIGSEGV, Segmentation fault.
IDLParser::collectValueDcl (this=0x7fffffffceb0, con=0x73b810,
node=0x728740) at idlparser.cc:2247
2247 if (sif->def_kind() == CORBA::dk_Interface) {
(gdb) bt
#0 IDLParser::collectValueDcl (this=0x7fffffffceb0, con=0x73b810,
node=0x728740) at idlparser.cc:2247
#1 0x0000000000438b6b in IDLParser::scan (this=0x7fffffffceb0,
con=0x73b810, node=<optimized out>) at idlparser.cc:272
#2 0x0000000000439e03 in IDLParser::collectModule (this=0x7fffffffceb0,
con=0x737030, node=0x7288c0) at idlparser.cc:807
#3 0x0000000000438b6b in IDLParser::scan (this=0x7fffffffceb0,
con=0x737030, node=<optimized out>) at idlparser.cc:272
#4 0x0000000000439e03 in IDLParser::collectModule (this=0x7fffffffceb0,
con=0x7327a0, node=0x728a00) at idlparser.cc:807
#5 0x0000000000438b6b in IDLParser::scan (this=0x7fffffffceb0,
con=0x7327a0, node=<optimized out>) at idlparser.cc:272
#6 0x000000000043a0ea in IDLParser::collect (this=0x7fffffffceb0,
cont=0x7327a0, root=0x728cc0) at idlparser.cc:89
#7 0x000000000041c5bd in main (argc=3, argv=<optimized out>) at
main.cc:189
Thanks,
Victor Fusco
"The future is here. It's just not widely distributed yet."
William Gibson