From fc23148202374e5e29d51d4de5f2a987a938e948 Mon Sep 17 00:00:00 2001 From: hjk Date: Tue, 14 Apr 2015 14:17:58 +0200 Subject: [PATCH] Debugger: Make access to non-existing member throw with LLDB This mimics GDB behavior. Change-Id: I929a87ff227e4af7cfbfbbcd2a8e72c9999e9338 Reviewed-by: Christian Stenger --- share/qtcreator/debugger/lldbbridge.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/share/qtcreator/debugger/lldbbridge.py b/share/qtcreator/debugger/lldbbridge.py index d5088cd0418..21066a53838 100644 --- a/share/qtcreator/debugger/lldbbridge.py +++ b/share/qtcreator/debugger/lldbbridge.py @@ -125,7 +125,10 @@ def impl_SBValue__getitem__(value, index): address = address & 0xFFFFFFFFFFFFFFFF # Force unsigned return value.CreateValueFromAddress(None, address, innertype) return value.GetChildAtIndex(index) - return value.GetChildMemberWithName(index) + item = value.GetChildMemberWithName(index) + if item.IsValid(): + return item + raise RuntimeError("SBValue.__getitem__: No such member '%s'" % index) def impl_SBValue__deref(value): result = value.Dereference()