File indexing completed on 2024-05-05 05:41:38

0001 #include <QtCore/QCoreApplication>
0002 
0003 
0004 
0005 
0006 
0007 
0008 
0009 struct NonPod
0010 {
0011     NonPod() {}
0012     ~NonPod() {}
0013     int a;
0014 };
0015 
0016 struct NonPod2
0017 {
0018     NonPod2() {}
0019 };
0020 
0021 struct NonPod3
0022 {
0023     ~NonPod3() {}
0024 };
0025 
0026 
0027 struct Pod
0028 {
0029     int a;
0030 };
0031 
0032 
0033 static Pod p;
0034 static NonPod p1;
0035 static NonPod2 p2;
0036 static NonPod3 p3;
0037 static NonPod* p4;
0038 static int p5;
0039 
0040 void foo() {}
0041 Q_COREAPP_STARTUP_FUNCTION(foo) // OK, it's blacklisted
0042 
0043 struct NonPodButOk
0044 {
0045     NonPodButOk() = default;
0046     NonPodButOk(const NonPodButOk &) {}
0047 };
0048 
0049 static NonPodButOk p6; // OK, both called ctor and dtor are trivial
0050 
0051 NonPod p7; // OK, it's not static, might be used somewhere else
0052 
0053 struct HasConstExprCtor
0054 {
0055     constexpr HasConstExprCtor(int i) : m_i(i) {}
0056     const int m_i;
0057 };
0058 
0059 constexpr static HasConstExprCtor p8(1);
0060 static HasConstExprCtor p9(1);