diff options
author | Sean Callanan <scallanan@apple.com> | 2016-12-01 17:46:51 +0000 |
---|---|---|
committer | Sean Callanan <scallanan@apple.com> | 2016-12-01 17:46:51 +0000 |
commit | cd1eb72bab8539d16d8b5ddb7415d1292d0ce324 (patch) | |
tree | 96e9d33a09e26f85c2d8f7a773f0724949ae8210 /lldb/packages/Python/lldbsuite/test | |
parent | 93f12aff5519479efc3e3d1114ff18579d376ff6 (diff) | |
download | bcm5719-llvm-cd1eb72bab8539d16d8b5ddb7415d1292d0ce324.tar.gz bcm5719-llvm-cd1eb72bab8539d16d8b5ddb7415d1292d0ce324.zip |
Handle UTF-16 and UTF-32 constant CFStrings
We have a longstanding issue where the expression parser does not handle wide CFStrings (e.g., @"凸凹") correctly, producing the useless error message
Internal error [IRForTarget]: An Objective-C constant string's string initializer is not an array
error: warning: expression result unused
error: The expression could not be prepared to run in the target
This is just a side effect of the fact that we don't handle wide string constants when converting these to CFStringCreateWithBytes. That function takes the string's encoding as an argument, so I made it work and added a testcase.
https://reviews.llvm.org/D27291
<rdar://problem/13190557>
llvm-svn: 288386
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test')
-rw-r--r-- | lldb/packages/Python/lldbsuite/test/lang/objc/unicode-string/TestUnicodeString.py | 6 | ||||
-rw-r--r-- | lldb/packages/Python/lldbsuite/test/lang/objc/unicode-string/main.m | 5 |
2 files changed, 11 insertions, 0 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/lang/objc/unicode-string/TestUnicodeString.py b/lldb/packages/Python/lldbsuite/test/lang/objc/unicode-string/TestUnicodeString.py new file mode 100644 index 00000000000..c9986aafd7d --- /dev/null +++ b/lldb/packages/Python/lldbsuite/test/lang/objc/unicode-string/TestUnicodeString.py @@ -0,0 +1,6 @@ +from lldbsuite.test import lldbinline +from lldbsuite.test import decorators + +lldbinline.MakeInlineTest( + __file__, globals(), [ + decorators.skipUnlessDarwin]) diff --git a/lldb/packages/Python/lldbsuite/test/lang/objc/unicode-string/main.m b/lldb/packages/Python/lldbsuite/test/lang/objc/unicode-string/main.m new file mode 100644 index 00000000000..e55eb1ede9b --- /dev/null +++ b/lldb/packages/Python/lldbsuite/test/lang/objc/unicode-string/main.m @@ -0,0 +1,5 @@ +#import <Foundation/Foundation.h> + +int main() { + NSLog(@"凸"); //% self.expect("po @\"凹\"", DATA_TYPES_DISPLAYED_CORRECTLY, substrs = ["凹"]) +} |