"[EMAIL PROTECTED]" <[EMAIL PROTECTED]> writes:

> MY platform is Linux, RH3

There was a RedHat-3.0.3 release (dated May 1st, 1996).
I very much doubt that that's your platform.

More likely you are using 'Red Hat Enterprise Linux v3', which is
usually abbreviated RHEL-3.

> I forgot to mention that, the GDB is showing some other file too.
> Actually, I am working on a huge compiler that creates an exectuable.

Huh?

> I am running the executable, which is a pure object code and will some
> time call, the ctors. Now the solution to compile all the
> problem file doing the #include of the header file having the
> constructor will be a bit of work. it will take a lot of time for me
> to do so.
>
> No the ctor is not inlined

If the ctor is not inlined, then recompiling anything but the file
in which it is defined, is pointless.

Try newer version of gdb; or try setting the breakpoint on machine
address of the first instruction of the ctor. Since it appears that
you don't know how to do so, here is an example:

$ cat junk.cc
struct Foo {
    Foo();
    int x;
};

Foo::Foo() : x(42)
{
}

int main()
{
   Foo f;
   return f.x;
}

$ g++ -g junk.cc
$ gdb -q ./a.out
Using host libthread_db library "/lib/tls/libthread_db.so.1".
(gdb) p &'Foo::Foo()' 
$1 = (<text variable, no debug info> *) 0x8048372 <Foo>
(gdb) b *0x8048372
Breakpoint 1 at 0x8048372: file junk.cc, line 6.
(gdb) r

Breakpoint 1, Foo (this=0x1) at junk.cc:6
6       Foo::Foo() : x(42)
(gdb) bt
#0  Foo (this=0x1) at junk.cc:6
#1  0x0804839c in main () at junk.cc:12
(gdb) c

Program exited with code 052.
(gdb) quit


Cheers,
-- 
In order to understand recursion you must first understand recursion.
Remove /-nsp/ for email.
_______________________________________________
help-gplusplus mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-gplusplus

Reply via email to