* Debugging static variable in inlined member function
@ 2007-01-08 15:55 Peng Yu
2007-01-08 17:58 ` Daniel Jacobowitz
0 siblings, 1 reply; 2+ messages in thread
From: Peng Yu @ 2007-01-08 15:55 UTC (permalink / raw)
To: gdb
Hi,
I have the following program listed below this email. I can not print
_a in the inlined version. But it is OK to print _a in the non-inlined
version. Can you tell me how to debug the inlined version of _a?
(gdb) s
main () at main.cc:32
32 std::cout << a.a() << std::endl;
(gdb) s
A::a (this=0xbff21077) at main.cc:11
11 std::cout << "inline" << std::endl;
(gdb) n
inline
12 ++ _a;
(gdb) p _a
No symbol "_a" in current context.
Thanks,
Peng
#include <iostream>
#define INLINE
class A {
public:
A() { }
#ifdef INLINE
int a() {
static int _a = 10;
std::cout << "inline" << std::endl;
++ _a;
return _a;
}
#else
int a();
#endif
private:
};
#ifndef INLINE
int A::a() {
static int _a = 10;
std::cout << "not inline" << std::endl;
++ _a;
return _a;
}
#endif
int main() {
A a;
std::cout << a.a() << std::endl;
}
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Debugging static variable in inlined member function
2007-01-08 15:55 Debugging static variable in inlined member function Peng Yu
@ 2007-01-08 17:58 ` Daniel Jacobowitz
0 siblings, 0 replies; 2+ messages in thread
From: Daniel Jacobowitz @ 2007-01-08 17:58 UTC (permalink / raw)
To: Peng Yu; +Cc: gdb
On Mon, Jan 08, 2007 at 09:55:31AM -0600, Peng Yu wrote:
> Hi,
>
> I have the following program listed below this email. I can not print
> _a in the inlined version. But it is OK to print _a in the non-inlined
> version. Can you tell me how to debug the inlined version of _a?
GDB support for inlined functions is known to be poor. GCC's debug
info for inlined functions also has some problems. There is not much
you can do to work around that.
--
Daniel Jacobowitz
CodeSourcery
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2007-01-08 17:58 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-01-08 15:55 Debugging static variable in inlined member function Peng Yu
2007-01-08 17:58 ` Daniel Jacobowitz
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox