Debugger: Workaround LLDB type handling failure on Linux

LLDB 3.7 on Linux doesn't get the namespace right in QMapNode:
sc t = lldb.target.FindFirstType('Myns::QMapNode<int, CustomStruct>')
sc t.GetName() -> QMapNode<int, CustomStruct> (no Myns::)

Change-Id: Ied306f70035e0669bc822700a92371b7de35a603
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
This commit is contained in:
hjk
2015-04-15 08:42:54 +02:00
parent c5de4fa358
commit 134234be67

View File

@@ -5347,7 +5347,11 @@ void tst_Dumpers::dumper_data()
"QMap<int, CustomStruct>::iterator it = map.begin();\n")
+ CoreProfile()
+ Check("map", "<2 items>", "@QMap<int, CustomStruct>")
+ CheckType("map.0", "[0]", "@QMapNode<int, CustomStruct>")
// FIXME: Hack
// LLDB 3.7 on Linux doesn't get the namespace right in QMapNode:
// t = lldb.target.FindFirstType('Myns::QMapNode<int, CustomStruct>')
// t.GetName() -> QMapNode<int, CustomStruct> (no Myns::)
+ CheckType("map.0", "[0]", Pattern(".*QMapNode<int, CustomStruct>"))
+ Check("map.0.key", "-1", "int")
+ CheckType("map.0.value", "CustomStruct")
+ Check("map.0.value.dvalue", FloatValue("3.14"), "double")