diff options
author | Enrico Granata <granata.enrico@gmail.com> | 2011-08-03 02:18:51 +0000 |
---|---|---|
committer | Enrico Granata <granata.enrico@gmail.com> | 2011-08-03 02:18:51 +0000 |
commit | 9910bc855d55b4958182321cfc81140346aa2e9f (patch) | |
tree | b1580154477ba572aee2e9b1ed49954c408c9ffb /lldb/test/lang/objc/objc-dynamic-value | |
parent | 59546b8f79bd020362c4478628111c0beb0b1dc0 (diff) | |
download | bcm5719-llvm-9910bc855d55b4958182321cfc81140346aa2e9f.tar.gz bcm5719-llvm-9910bc855d55b4958182321cfc81140346aa2e9f.zip |
Fixed an issue where the KVO swizzled type would be returned as the dynamic type instead of the actual user-level type
- see the test case in lang/objc/objc-dynamic-value for an example
Objective-C dynamic type lookup now works for every Objective-C type
- previously, true dynamic lookup was only performed for type id
llvm-svn: 136763
Diffstat (limited to 'lldb/test/lang/objc/objc-dynamic-value')
-rw-r--r-- | lldb/test/lang/objc/objc-dynamic-value/TestObjCDynamicValue.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lldb/test/lang/objc/objc-dynamic-value/TestObjCDynamicValue.py b/lldb/test/lang/objc/objc-dynamic-value/TestObjCDynamicValue.py index 1a5547bccce..bffe060274a 100644 --- a/lldb/test/lang/objc/objc-dynamic-value/TestObjCDynamicValue.py +++ b/lldb/test/lang/objc/objc-dynamic-value/TestObjCDynamicValue.py @@ -93,6 +93,14 @@ class ObjCDynamicValueTestCase(TestBase): self.expect('frame var -d run-target myObserver->_source', 'frame var finds its way into a child member', patterns = ['\(SourceDerived \*\)']) + + # check that our ObjC GetISA() does a good job at hiding KVO swizzled classes + + self.expect('frame var -d run-target myObserver->_source -T', 'the KVO-ed class is hidden', + substrs = ['dynamic type: SourceDerived']) + + self.expect('frame var -d run-target myObserver->_source -T', 'the KVO-ed class is hidden', matching = False, + substrs = ['dynamic type: NSKVONotify']) # This test is not entirely related to the main thrust of this test case, but since we're here, # try stepping into setProperty, and make sure we get into the version in Source: |