Sometimes the dladdr function fails to find some symbol names in the v-table.
Output of vtable-dumper /usr/lib64/libQt5Gui.so.5.4.2:
Vtable for QImageTextureGlyphCache
_ZTV23QImageTextureGlyphCache: 10 entries
0 (int (*)(...)) 0
8 (int (*)(...)) (& _ZTI23QImageTextureGlyphCache)
16 (int (*)(...)) QImageTextureGlyphCache::~QImageTextureGlyphCache()
24 (int (*)(...)) QImageTextureGlyphCache::~QImageTextureGlyphCache()
32 (int (*)(...)) QImageTextureGlyphCache::createTextureData(int, int)
40 (int (*)(...)) QImageTextureGlyphCache::resizeTextureData(int, int)
48 (int (*)(...)) 0x32d210
56 (int (*)(...)) QImageTextureGlyphCache::fillTexture(QTextureGlyphCache::Coord const&, unsigned int, QFixed)
64 (int (*)(...)) 0x32d220
72 (int (*)(...)) 0x32d230
The tool can't find symbol names for 0x32d210, 0x32d220 and 0x32d230.
The g++ -fdump-class-hierarchy ./qtextureglyphcache_p.h returns for this class:
Vtable for QImageTextureGlyphCache
QImageTextureGlyphCache::_ZTV23QImageTextureGlyphCache: 10u entries
0 (int (*)(...))0
8 (int (*)(...))(& _ZTI23QImageTextureGlyphCache)
16 (int (*)(...))QImageTextureGlyphCache::~QImageTextureGlyphCache
24 (int (*)(...))QImageTextureGlyphCache::~QImageTextureGlyphCache
32 (int (*)(...))QImageTextureGlyphCache::createTextureData
40 (int (*)(...))QImageTextureGlyphCache::resizeTextureData
48 (int (*)(...))QTextureGlyphCache::glyphPadding
56 (int (*)(...))QImageTextureGlyphCache::fillTexture
64 (int (*)(...))QTextureGlyphCache::maxTextureWidth
72 (int (*)(...))QTextureGlyphCache::maxTextureHeight
The QTextureGlyphCache::* inline virtual methods names are missed in the vtable-dumper output.
Sometimes the dladdr function fails to find some symbol names in the v-table.
Output of
vtable-dumper /usr/lib64/libQt5Gui.so.5.4.2:The tool can't find symbol names for
0x32d210,0x32d220and0x32d230.The
g++ -fdump-class-hierarchy ./qtextureglyphcache_p.hreturns for this class:The
QTextureGlyphCache::*inline virtual methods names are missed in thevtable-dumperoutput.