Re: Dwarf in assembler file

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Fabian Cenedese <Cenedese@xxxxxxxx> writes:

> Why are there three symbols _ZN17_TASK_CLASS_NAME_D{0,1,2}Ev? They're all
> placed on the same source line .loc 3 120 0, contain exactly the same code. So what
> is the meaning/difference between these three? I also get two symbols for the constructor,
> also only differing in the last number.

These are required by the C++ ABI:
    http://codesourcery.com/cxx-abi/

base object destructor of a class T
    A function that runs the destructors for non-static data members
    of T and non-virtual direct base classes of T.

complete object destructor of a class T
    A function that, in addition to the actions required of a base
    object destructor, runs the destructors for the virtual base
    classes of T.

deleting destructor of a class T
    A function that, in addition to the actions required of a complete
    object destructor, calls the appropriate deallocation function
    (i.e,. operator delete) for T.

The compiler should do a better job of combining them, since they are
often the same.

Ian

[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux