[Dwarf-Discuss] C++ implicit inline member function

Swarup Sahoo me.swar at gmail.com
Tue Nov 11 02:03:36 PST 2014


Hi,
I have observed that implicit inline member functions info is not getting
captured in .debug_info section. Usually explicitly declared inlined
function info is getting captured. But implicit inline member functions,
though they are getting inlined in the executable, but no
DW_TAG_inlined_subroutine entry is stored for these functions. Is this
compiler (GCC) side limitation or DWARF standard limitation?

I tried with the following setup:

Compiler: G++/GCC 4.8.2, Clang++/LLVM 3.4

DWARF version: 4

Sample program:

class test
{
    private:
        // some private members

    public:
        // this is an implicit inline member function
        void small_func()
        {
            // do some operation
        }

        void big_func();
};

void test::big_func()
{
    // call small_func()
}

int main()
{
    test t1 ;
    t1.big_func();
    return 0;
}



Regards,
Swarup
​
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.dwarfstd.org/private.cgi/dwarf-discuss-dwarfstd.org/attachments/20141111/c91500de/attachment.htm>


More information about the Dwarf-Discuss mailing list