From cc62f28735768c09b0c5effea183d0d7c9be6a4f Mon Sep 17 00:00:00 2001 From: Jason Molenda Date: Sat, 6 Oct 2012 01:46:12 +0000 Subject: Revert Vishal's patch that Enrico commited, at least for the weekend. With it applied, starting lldb I get % ./lldb -x Traceback (most recent call last): File "", line 1, in File "/private/tmp/build/Debug/LLDB.framework/Versions/A/Resources/Python/lldb/__init__.py", line 9008 raise TypeError("No array item of type %s" % str(type(key))) ^ SyntaxError: invalid syntax Traceback (most recent call last): File "", line 1, in NameError: name 'run_one_line' is not defined Traceback (most recent call last): File "", line 1, in NameError: name 'run_one_line' is not defined Traceback (most recent call last): File "", line 1, in NameError: name 'run_one_line' is not defined (lldb) I did a clean build and still got the problem so I'm backing this out until Enrico can look at it. llvm-svn: 165356 --- lldb/scripts/Python/python-extensions.swig | 31 +++++++++++------------------- 1 file changed, 11 insertions(+), 20 deletions(-) (limited to 'lldb/scripts/Python') diff --git a/lldb/scripts/Python/python-extensions.swig b/lldb/scripts/Python/python-extensions.swig index aa45cee..f9e5a13 100644 --- a/lldb/scripts/Python/python-extensions.swig +++ b/lldb/scripts/Python/python-extensions.swig @@ -539,15 +539,13 @@ class value(object): # Allow array access if this value has children... if type(key) is int: return value(self.sbvalue.GetValueForExpressionPath("[%i]" % key)) - if type(key) is value: - return value(self.sbvalue.GetValueForExpressionPath("[%i]" % int(key)) - raise TypeError("No array item of type %s" % str(type(key))) + raise TypeError def __getattr__(self, name): child_sbvalue = self.sbvalue.GetChildMemberWithName (name) if child_sbvalue: return value(child_sbvalue) - raise AttributeError("Attribute '%s' is not defined" % name) + raise AttributeError def __add__(self, other): return int(self) + int(other) @@ -692,22 +690,15 @@ class value(object): return '0x%x' % self.sbvalue.GetValueAsUnsigned() def __eq__(self, other): - if type(other) is int: - return int(self) == other - elif type(other) is str: - return str(self) == other - elif type(other) is value: - self_err = SBError() - other_err = SBError() - self_val = self.sbvalue.GetValueAsUnsigned(self_err) - if self_err.fail: - raise ValueError("unable to extract value of self") - other_val = other.sbvalue.GetValueAsUnsigned(other_err) - if other_err.fail: - raise ValueError("unable to extract value of other") - return self_val == other_val - raise TypeError("Unknown type %s, No equality operation defined." % str(type(other))) - + self_err = SBError() + other_err = SBError() + self_val = self.sbvalue.GetValueAsUnsigned(self_err) + if self_err.fail: + raise ValueError("unable to extract value of self") + other_val = other.sbvalue.GetValueAsUnsigned(other_err) + if other_err.fail: + raise ValueError("unable to extract value of other") + return self_val == other_val def __neq__(self, other): return not self.__eq__(other) -- cgit v1.1