User forums > Help
debugging on linux: strange symbols, files open twice, "nothing to be done"
mandrav:
Right, this seems to be some kind of gcc/gdb bug.
This bug can be circumvented by removing the "virtual" keyword from the TestDebugger class' ancestors list
--- Code: ---class TestDebugger : public foo::Base1 ,public Base2
--- End code ---
CuteAlien:
--- Quote from: mandrav on September 16, 2008, 09:51:32 pm ---Right, this seems to be some kind of gcc/gdb bug.
This bug can be circumvented by removing the "virtual" keyword from the TestDebugger class' ancestors list
--- Code: ---class TestDebugger : public foo::Base1 ,public Base2
--- End code ---
--- End quote ---
That would work in my reduced test-case... but the real classes are derived from a class doing the reference-counting so that would introduce diamond inheritance problems :-(
Edit: I'll report it to the gdb people.
Jenna:
Have you tried to use a pointer ?
--- Code: ---TestDebugger* iAmTheBug;
--- End code ---
That works for me in the test-case.
CuteAlien:
--- Quote from: jens on September 16, 2008, 11:45:37 pm ---Have you tried to use a pointer ?
--- End quote ---
Thanks, nice workaround :-) That way I can actually debug it.
mandrav:
--- Quote from: CuteAlien on September 16, 2008, 10:38:21 pm ---... but the real classes are derived from a class doing the reference-counting so that would introduce diamond inheritance problems :-(
--- End quote ---
(emphasis added)
Which is why you shouldn't create such objects on the stack but only on the heap...
So, Jens is right (again) :) :
--- Quote from: jens on September 16, 2008, 11:45:37 pm ---Have you tried to use a pointer ?
--- End quote ---
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version