aboutsummaryrefslogtreecommitdiffstats
path: root/share/qtcreator
diff options
context:
space:
mode:
authorDavid Schulz <david.schulz@qt.io>2019-09-03 10:16:06 +0200
committerDavid Schulz <david.schulz@qt.io>2019-09-09 11:35:24 +0000
commitd72632acd646eb6dd4552a0a7ddd30ea3dacd46f (patch)
tree2d62e2b118f2c299ea329d2a7c0ab71976da245b /share/qtcreator
parentf1e3484cd7a86664ec2094230bab741f768f050c (diff)
Debugger: add dumper for std::initializer_list
Change-Id: I223182cecf1f04dbc9908dc993a8800c1633c48b Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Diffstat (limited to 'share/qtcreator')
-rw-r--r--share/qtcreator/debugger/stdtypes.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/share/qtcreator/debugger/stdtypes.py b/share/qtcreator/debugger/stdtypes.py
index bdbaea14d5..2f51aa2ec1 100644
--- a/share/qtcreator/debugger/stdtypes.py
+++ b/share/qtcreator/debugger/stdtypes.py
@@ -1039,6 +1039,24 @@ def qdump__std____debug__vector(d, value):
qdump__std__vector(d, value)
+def qdump__std__initializer_list(d, value):
+ innerType = value.type[0]
+ if d.isMsvcTarget():
+ start = value["_First"].pointer()
+ end = value["_Last"].pointer()
+ size = int((end - start) / innerType.size())
+ else:
+ try:
+ start = value["_M_array"].pointer()
+ size = value["_M_len"].integer()
+ except:
+ start = value["__begin_"].pointer()
+ size = value["__size_"].integer()
+
+ d.putItemCount(size)
+ if d.isExpanded():
+ d.putPlotData(start, size, innerType)
+
def qedit__std__string(d, value, data):
d.call('void', value, 'assign', '"%s"' % data.replace('"', '\\"'))