"info locals" -- is variable initialized

Vladimir Prus ghost@cs.msu.su
Fri Sep 2 07:58:00 GMT 2005


Hello,
I'm thinking about adding pretty-printing for STL and KDE structures in
KDevelop, and run into this problem. Consider the program:

   int main()
   {
        int i1;
        ....
        KURL i2;
   }

When entering this function, KDevelop asks gdb via "info locals" what locals
vars are there. But, gdb reports all variables, even though at the function
entry 'i2' is not initialized (or, from C++ point of view, not even visible
yet). For pretty priting 'i2', I have to evaluate 'i2.prettyURL(0)', which
will just crash. I can use "set unwindonsignal on", but generally, calling
methods on uninitialized object can damage random memory.

So:
1. Can I determine, for a given variable, if it's in scope already?
2. Can I make "info local" return only the variables that are already in
scope?
3. If no, any ideas how the above can be implemented?

- Volodya



More information about the Gdb mailing list