Debugger: Improve handling of static members in shared objects

Change-Id: I4978094dc5dcd0e57bb6790cfc8476a9db77724d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
hjk
2017-04-25 13:03:51 +02:00
parent dacf13948e
commit 1e9cc97220
2 changed files with 24 additions and 0 deletions
+18
View File
@@ -6747,6 +6747,7 @@ void tst_Dumpers::dumper_data()
+ Check("tc.2.bar", "15", "int")
+ Check("tc.3.bar", "15", "int");
QTest::newRow("UndefinedStaticMembers")
<< Data("struct Foo { int a = 15; static int b; }; \n",
"Foo f; unused(&f);\n")
@@ -6754,6 +6755,23 @@ void tst_Dumpers::dumper_data()
+ Check("f.b", "<optimized out>", "") % NoCdbEngine
+ Check("f.b", "", "<Value unavailable error>") % CdbEngine;
#ifdef Q_OS_LINUX
QTest::newRow("StaticMembersInLib")
// We don't seem to have such in the public interface.
<< Data("#include <private/qlocale_p.h>\n"
"#include <private/qflagpointer_p.h>\n",
"QLocaleData d; unused(&d);\n"
"QFlagPointer<int> p; unused(&p);\n")
+ CorePrivateProfile()
+ QmlPrivateProfile()
+ QtVersion(0x50800)
+ Check("d.Log10_2_100000", "30103", "int")
+ Check("p.FlagBit", "<optimized out>", "") % NoCdbEngine
+ Check("p.FlagBit", "", "<Value unavailable error>", "") % CdbEngine;
#endif
QTest::newRow("ArrayOfFunctionPointers")
<< Data("typedef int (*FP)(int *); \n"
"int func(int *param) { unused(param); return 0; } \n",