I have another apparent Dinkum libs problem.
I have a situation where a particular executable is failing to get cin
initialised correctly. I can see in the Debugger that
ios_base::Init::Init(void) is getting called (which is in libcpp.so.2a), but
after this completes cin is not correctly initialised, and any attempt to
access it causes a SIGSEGV.
I can see that cin is incorrect as soon as ios_base::Init::Init()
completes - so there is no opportunity for this memory to have got stomped
by some other bad code. It looks like something is going wrong internally in
ios_base::Init::Init().
This does not happen for all executables, only some. Yes, I am currently
trying to narrow the problem down as to the differences between the
executables that work and those that don’t, but after two days of
frustration I have got nowhere. No, I can’t produce a “simple” test case
that fails.
If I recompile with the GNU/GCC libs the problem goes away.
So:
- has anyone else seen anything similar?
- is it possible to see the source to ios_base::Init::Init() to try to get
some idea of what might be going wrong? - Any other suggestions on how to track this down? Is there a trick to get
symbols visible within the .so libraries within ddd? - Is anyone else finding the Dinkum libs to be generally unstable, or have
we just been desparately unlucky to have two issues within a week?
Rob Rutherford
Ruzz Technology