summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/python_api/section/TestSectionAPI.py
diff options
context:
space:
mode:
authorBen Langmuir <blangmuir@apple.com>2016-02-03 03:26:19 +0000
committerBen Langmuir <blangmuir@apple.com>2016-02-03 03:26:19 +0000
commit6a34e10514ab154e364f105ca5980acd479bf925 (patch)
tree7a86c182e42ce3dcd47adb81c43696f58d79adb2 /lldb/packages/Python/lldbsuite/test/python_api/section/TestSectionAPI.py
parent83cc981c49447c96bd311b5414535338c4d15bcf (diff)
downloadbcm5719-llvm-6a34e10514ab154e364f105ca5980acd479bf925.tar.gz
bcm5719-llvm-6a34e10514ab154e364f105ca5980acd479bf925.zip
Make CF constant string decl visible to name lookup to fix module errors
The return type of the __builtin___*StringMakeConstantString functions is a pointer to a struct, so we need that struct to be visible to name lookup so that we will correctly merge multiple declarations of that type if they come from different modules. Incidentally, to make this visible to name lookup we need to rename the type to __NSConstantString, since the real NSConstantString is an Objective-C interface type. This shouldn't affect anyone outside the compiler since users of the constant string builtins cast the result immediately to CFStringRef. Since this struct type is otherwise implicitly created by the AST context and cannot access namelookup, we make this a predefined type and initialize it in Sema. Note: this issue of builtins that refer to types not visible to name lookup technically also affects other builtins (e.g. objc_msgSendSuper), but in all other cases the builtin is a library builtin and the issue goes away if you include the library that defines the types it uses, unlike for these constant string builtins. rdar://problem/24425801 llvm-svn: 259624
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/section/TestSectionAPI.py')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud