tests/auto/symbols/tst_symbols.cpp
branchRCL_3
changeset 7 3f74d0d4af4c
parent 4 3b1da2848fc7
equal deleted inserted replaced
6:dee5afe5301f 7:3f74d0d4af4c
   210                    << "t1cid_driver_class"
   210                    << "t1cid_driver_class"
   211                    << "t42_driver_class"
   211                    << "t42_driver_class"
   212                    << "winfnt_driver_class"
   212                    << "winfnt_driver_class"
   213                    << "pshinter_module_class"
   213                    << "pshinter_module_class"
   214                    << "psnames_module_class"
   214                    << "psnames_module_class"
       
   215                    // C symbols from Qt
       
   216                    << "qt_addObject"
       
   217                    << "qt_removeObject"
       
   218                    << "qt_startup_hook"
   215                    ;
   219                    ;
   216 
   220 
   217     QHash<QString,QStringList> excusedPrefixes;
   221     QHash<QString,QStringList> excusedPrefixes;
   218     excusedPrefixes[QString()] =
   222     excusedPrefixes[QString()] =
   219         QStringList() << "Ui_Q"; // uic generated, like Ui_QPrintDialog
   223         QStringList() << "Ui_Q"; // uic generated, like Ui_QPrintDialog
   277                       << "SVG::"
   281                       << "SVG::"
   278                       << "NPN_"
   282                       << "NPN_"
   279                       << "cti"  // ctiTrampoline and ctiVMThrowTrampoline from the JIT
   283                       << "cti"  // ctiTrampoline and ctiVMThrowTrampoline from the JIT
   280 #ifdef QT_NAMESPACE
   284 #ifdef QT_NAMESPACE
   281                       << "QWeb" // Webkit is only 'namespace aware'
   285                       << "QWeb" // Webkit is only 'namespace aware'
       
   286                       << "qWeb"
       
   287                       << "qt"
       
   288                       << "QGraphicsWebView"
       
   289                       << "operator"
   282 #endif
   290 #endif
   283         ;
   291         ;
   284 
   292 
   285     excusedPrefixes["phonon"] =
   293     excusedPrefixes["phonon"] =
   286         QStringList() << ns + "Phonon";
   294         QStringList() << ns + "Phonon";
   329                 symbol.startsWith("const& ")) {
   337                 symbol.startsWith("const& ")) {
   330                 // strip modifiers
   338                 // strip modifiers
   331                 symbol = symbol.mid(symbol.indexOf(' ') + 1);
   339                 symbol = symbol.mid(symbol.indexOf(' ') + 1);
   332             }
   340             }
   333 
   341 
       
   342             if (symbol.mid(symbol.indexOf(' ')+1).startsWith("std::"))
       
   343                 continue;
   334             if (symbol.startsWith("_") || symbol.startsWith("std::"))
   344             if (symbol.startsWith("_") || symbol.startsWith("std::"))
   335                 continue;
   345                 continue;
   336             if (symbol.startsWith("vtable ") || symbol.startsWith("VTT for ") ||
   346             if (symbol.startsWith("vtable ") || symbol.startsWith("VTT for ") ||
   337                 symbol.startsWith("construction vtable for"))
   347                 symbol.startsWith("construction vtable for"))
   338                 continue;
   348                 continue;
   339             if (symbol.startsWith("typeinfo "))
   349             if (symbol.startsWith("typeinfo "))
   340                 continue;
   350                 continue;
   341             if (symbol.startsWith("non-virtual thunk ") || symbol.startsWith("virtual thunk"))
   351             if (symbol.startsWith("non-virtual thunk ") || symbol.startsWith("virtual thunk"))
   342                 continue;
   352                 continue;
   343             if (symbol.startsWith(ns + "operator"))
   353             if (symbol.startsWith(ns + "operator"))
       
   354                 continue;
       
   355             if (symbol.startsWith("operator new") || symbol.startsWith("operator delete"))
   344                 continue;
   356                 continue;
   345             if (symbol.startsWith("guard variable for "))
   357             if (symbol.startsWith("guard variable for "))
   346                 continue;
   358                 continue;
   347             if (symbol.contains("(" + ns + "QTextStream"))
   359             if (symbol.contains("(" + ns + "QTextStream"))
   348                 // QTextStream is excused.
   360                 // QTextStream is excused.