[Lsb-infrastructure] libchk script bug?
Jeff Licquia
jeff at licquia.org
Thu Nov 15 14:17:03 PST 2007
In the (new?) Qt 4 data, we have QFileSystemWatcher:
http://www.linux-foundation.org/navigator/browse/class_single.php?cmd=list-by-name&Cname=QFileSystemWatcher&CIid=2402
Note that the number of functions is 12, which matches with the Content
section of the page.
Here's the equivalent in libchk:
struct classvtable _18QFileSystemWatcher_of_libQtCore_so_4_vtable [1] = {
{
0,
0,
1, /* Vtable category */
12, /* Number of Vfuncs */
"_ZTI18QFileSystemWatcher",
_18QFileSystemWatcher_of_libQtCore_so_4_vtable_name_0,
},
};
Good so far. But what does the vtable actually look like?
const char *_18QFileSystemWatcher_of_libQtCore_so_4_vtable_name_0 [] = {
"_ZN7QObject5eventEP6QEvent",
"_ZN7QObject11eventFilterEPS_P6QEvent",
"_ZN7QObject10timerEventEP11QTimerEvent",
"_ZN7QObject10childEventEP11QChildEvent",
"_ZN7QObject11customEventEP6QEvent",
"_ZN7QObject13connectNotifyEPKc",
"_ZN7QObject16disconnectNotifyEPKc",
};
Oops! We're missing five functions! This, by the way, will cause
libchk to segfault once it iterates up to the 9th (nonexistent) virtual
function.
Moreover, the missing functions are all defined in QFileSystemWatcher,
while the ones that show up are QObject virtual functions.
It might also be of note that no base class shows up in the Navigator,
though obviously QFileSystemWatcher has to derive from QObject to get
virtual functions from it.
More information about the lsb-infrastructure
mailing list