File indexing completed on 2024-04-21 05:38:54
0001 #include <QtCore/QList> 0002 #include <QtCore/QVariant> 0003 #include <vector> 0004 #include <QtCore/QHash> 0005 Q_GLOBAL_STATIC(QList<int>, s_list); 0006 0007 QList<int> getList() 0008 { 0009 QList<int> list; 0010 list << 1; 0011 return list; 0012 } 0013 0014 QList<int>& getListRef() 0015 { 0016 static QList<int> list; 0017 return list; 0018 } 0019 0020 void test() 0021 { 0022 for (auto it = getList().begin(); it != getList().end(); ++it) {} // Warning 0023 for (auto it = getListRef().begin(); it != getListRef().end(); ++it) {} // OK 0024 0025 QList<int> localList; 0026 for (auto it = localList.begin(); it != localList.end(); ++it) {} // OK 0027 localList.cbegin(); // OK 0028 getListRef().cbegin(); // OK 0029 getList().cbegin(); // Warning 0030 0031 s_list->cbegin(); // OK 0032 QVariant variant; 0033 variant.toList().cbegin(); // OK 0034 } 0035 0036 void acceptsInt(int) {} 0037 0038 void testDereference() 0039 { 0040 int value = *getList().cbegin(); // OK 0041 value = *(getList().cbegin()); // OK 0042 acceptsInt(*getList().cbegin()); //OK 0043 const QHash<int, QList<int> > listOfLists; 0044 int ns = 1; 0045 for (auto it = listOfLists[ns].constBegin(); it != listOfLists[ns].constEnd(); ++it) {} // OK 0046 0047 } 0048 0049 QHash<int,int> getHash() 0050 { 0051 return {}; 0052 } 0053 0054 void testMember() 0055 { 0056 getHash().cbegin(); // Warning 0057 getHash().cbegin().value(); // OK 0058 }