summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenObjCXX/mangle.mm
Commit message (Collapse)AuthorAgeFilesLines
* Fix mangled name of method with ns_consumed parameters.Nico Weber2016-05-251-1/+8
| | | | | | | | | | | | | | | | | | | | | | | When a function/method use a parameter with "ns_consumed" attribute, ensure that the mangled name is the same whether -fobjc-arc is used or not. Since "ns_consumed" attribute is generally used to inform ARC that a function/method does sink the reference, it mean it is usually implemented in a compilation unit compiled without -fobjc-arc but used form a compilation unit compiled with it. Originally found while trying to use "ns_consumed" attribute in an Objective-C++ file in Chromium (http://crbug.com/599980) where it caused a linker error. Regression introduced by revision 262278 (previously the attribute was incorrectly not part of the mangled name). Patch from Sylvain Defresne <sdefresne@chromium.org>! http://reviews.llvm.org/D20113 llvm-svn: 270702
* Implement the Objective-C __kindof type qualifier.Douglas Gregor2015-07-071-0/+15
| | | | | | | | | | The __kindof type qualifier can be applied to Objective-C object (pointer) types to indicate id-like behavior, which includes implicit "downcasting" of __kindof types to subclasses and id-like message-send behavior. __kindof types provide better type bounds for substitutions into unspecified generic types, which preserves more type information. llvm-svn: 241548
* CHECK-LABEL-ify some code gen tests to improve diagnostic experience when ↵Stephen Lin2013-08-151-8/+8
| | | | | | tests fail. llvm-svn: 188447
* Introduce a new mangling for protocol-qualified ObjC types in C++. This allowsEli Friedman2013-06-181-0/+20
| | | | | | | | | | | | to provide proper overloading, and also prevents mangling conflicts with template arguments of protocol-qualified type. This is a non-backward-compatible mangling change, but per discussion with John, the benefits outweigh this cost. Fixes <rdar://problem/14074822>. llvm-svn: 184250
* Don't crash when mangling types defined in ObjC class extensions.John McCall2013-04-101-1/+25
| | | | | | | | | The original test case here was mangling a type name for TBAA, but we can provoke this in C++11 easily enough. rdar://13434937 llvm-svn: 179153
* Don't add objc method name mangling to locally declared function.Fariborz Jahanian2011-06-091-0/+12
| | | | | | // rdar://9566314 llvm-svn: 132791
* Add encoding of reference types like gcc does for objc methods andFariborz Jahanian2010-04-131-0/+12
| | | | | | blocks. Fixes PR6468. llvm-svn: 101196
* Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.Daniel Dunbar2009-12-151-1/+1
| | | | | | | | | - This is designed to make it obvious that %clang_cc1 is a "test variable" which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it can be useful to redefine what gets run as 'clang -cc1' (for example, to set a default target). llvm-svn: 91446
* Test uses the new clang.Fariborz Jahanian2009-12-141-1/+1
| | | | llvm-svn: 91292
* Mangle static variables inside Objective-C methods in Objective-C++. We ↵Anders Carlsson2009-12-101-0/+32
currently mangle them the same way as gcc does. llvm-svn: 91042
OpenPOWER on IntegriCloud