llvm-project/clang/test/SemaObjCXX
Ted Kremenek e65b086e07 Add clang support for new Objective-C literal syntax for NSDictionary, NSArray,
NSNumber, and boolean literals.  This includes both Sema and Codegen support.
Included is also support for new Objective-C container subscripting.

My apologies for the large patch.  It was very difficult to break apart.
The patch introduces changes to the driver as well to cause clang to link
in additional runtime support when needed to support the new language features.

Docs are forthcoming to document the implementation and behavior of these features.

llvm-svn: 152137
2012-03-06 20:05:56 +00:00
..
Inputs Automatic Reference Counting. 2011-06-15 23:02:42 +00:00
NSString-type.mm objective-c++: Type of an objc string literal is NSString, not 'id'. 2012-02-23 22:51:36 +00:00
arc-0x.mm Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
arc-bool-conversion.mm Make -fobjc-nonfragile-abi the -cc1 default, since it's the 2011-10-02 01:16:38 +00:00
arc-bridged-cast.mm Make -fobjc-nonfragile-abi the -cc1 default, since it's the 2011-10-02 01:16:38 +00:00
arc-libstdcxx.mm Make -fobjc-nonfragile-abi the -cc1 default, since it's the 2011-10-02 01:16:38 +00:00
arc-memfunc.mm Make -fobjc-nonfragile-abi the -cc1 default, since it's the 2011-10-02 01:16:38 +00:00
arc-non-pod.mm Make -fobjc-nonfragile-abi the -cc1 default, since it's the 2011-10-02 01:16:38 +00:00
arc-nsconsumed-errors.mm Make -fobjc-nonfragile-abi the -cc1 default, since it's the 2011-10-02 01:16:38 +00:00
arc-object-init-destroy.mm Make -fobjc-nonfragile-abi the -cc1 default, since it's the 2011-10-02 01:16:38 +00:00
arc-overloading.mm Under ARC, merge the bit corresponding to the ns_returns_retained 2011-10-14 15:55:40 +00:00
arc-ppe.mm Fix a couple issues where we didn't correctly delay diagnostics in PotentiallyPotentiallyEvaluated contexts. In preparation for making sizeof() PotentiallyPotentiallyEvaluated. 2012-01-18 01:05:54 +00:00
arc-system-header.mm Make -fobjc-nonfragile-abi the -cc1 default, since it's the 2011-10-02 01:16:38 +00:00
arc-templates.mm Only complain about __strong __strong id, not __strong SomeStrongTypedef 2012-02-08 00:46:41 +00:00
arc-type-conversion.mm Teach the ARC compiler to not require __bridge casts when 2011-10-17 18:40:02 +00:00
arc-type-traits.mm Unrevert r147271, reverted in r147361. 2011-12-30 21:15:51 +00:00
arc-unavailable-for-weakref.mm Improve text of a diagnostic. 2011-10-31 17:27:06 +00:00
arc-unbridged-cast.mm Look for declaration of CFBridgingRetain/CFBridgingRetain before 2012-02-01 22:56:20 +00:00
argument-dependent-lookup.mm Objective-C++: The global namespace is an associated namespace of an 2011-04-12 01:02:45 +00:00
blocks.mm Allow block returns in C++ with the form 2011-06-05 05:14:41 +00:00
category-lookup.mm
composite-objc-pointertype.mm
conditional-expr.mm
const-cast.mm Permit Objective C object pointers to be const_casted. 2010-05-18 09:35:29 +00:00
conversion-ranking.mm Implement reasonable conversion ranking for Objective-C pointer 2011-01-31 18:51:41 +00:00
conversion-to-objc-pointer-2.mm Contributed test case for PR7936 2010-08-21 00:17:33 +00:00
conversion-to-objc-pointer.mm Objective-C++ Sema. Fix a bug in instantiation of receivers. 2010-05-13 17:19:25 +00:00
cstyle-block-pointer-cast.mm
cstyle-cast.mm Provide overload diagnostics when explicit casts involving class types fail. 2011-02-14 18:34:10 +00:00
cxxoperator-selector.mm Patch to allow alternative representation of c++ 2010-09-03 01:26:16 +00:00
debugger-cast-result-to-id.mm Fixed some testsuite problems introduced by my 2012-02-04 02:28:18 +00:00
deduction.mm Permit template argument deduction to add qualifiers within ObjC object 2010-08-05 05:30:45 +00:00
exceptions-fragile.mm Make -fobjc-nonfragile-abi the -cc1 default, since it's the 2011-10-02 01:16:38 +00:00
expr-objcxx.mm handle :: in selectors in objc++ mode, rdar://8366474 2010-08-27 22:32:41 +00:00
foreach-block.mm ObjClang++: Allow declaration of block variable in a collection 2010-08-29 17:20:53 +00:00
fragile-abi-object-assign.m objc: Issue a generic diagnostic assigning to 2012-01-24 19:40:13 +00:00
function-pointer-void-star.mm
gc-attributes.mm Rename objc_lifetime -> objc_ownership, and modify diagnostics to talk about 'ownership', not 'lifetime'. 2011-06-24 00:08:59 +00:00
goto.mm Make sure that we always pop a function's scope *before* we call 2011-03-16 17:05:57 +00:00
instantiate-expr.mm objc: deprecate direct usage of 'isa' of objc objects 2012-01-18 19:08:56 +00:00
instantiate-message.mm tests: Use %clangxx when using driver for C++, in case C++ support is disabled. 2010-06-29 16:52:24 +00:00
instantiate-method-return.mm Make sure result type of objc++ message expression is 2010-06-16 18:56:04 +00:00
instantiate-stmt.mm Make clang -cc1 disable Objective-C exceptions by default, and add a -fobjc-exceptions flag to turn them on. 2011-02-22 01:52:06 +00:00
ivar-construct.mm Various small fixes for construction/destruction of Objective-C++ 2010-05-20 02:24:22 +00:00
ivar-lookup.mm More tests for Objective-C-related name lookup weirdness. Yes, it's 2010-04-19 19:10:40 +00:00
ivar-reference-type.mm Diagnose declaration of reference typed ivars. 2010-04-26 22:07:03 +00:00
ivar-struct.mm Reinstate r104117, Chandler Carruth's change that "[provides] a naming 2010-05-20 20:58:56 +00:00
linkage-spec.mm objc - fix a bug exposed by my recent decl context 2011-08-25 22:26:53 +00:00
literals.mm Add clang support for new Objective-C literal syntax for NSDictionary, NSArray, 2012-03-06 20:05:56 +00:00
message.mm Make -fobjc-nonfragile-abi the -cc1 default, since it's the 2011-10-02 01:16:38 +00:00
namespace-lookup.mm When checking for a prior declaration of the name of a namespace, skip 2011-05-06 23:28:47 +00:00
null_objc_pointer.mm Put the new warning from revision 133196 on NULL arithmetic behind the flag -Wnull-arthimetic and set to DefaultIgnore. A few edge cases need to be worked out before this can be set to default. 2011-06-17 20:35:48 +00:00
nullptr.mm Update all tests other than Driver/std.cpp to use -std=c++11 rather than 2011-10-13 22:29:44 +00:00
objc-container-subscripting.mm Add clang support for new Objective-C literal syntax for NSDictionary, NSArray, 2012-03-06 20:05:56 +00:00
objc-decls-inside-namespace.mm Properly pop out of Objective-C method declarations when they are (ill-formedly) 2010-08-06 00:46:05 +00:00
objc-extern-c.mm Don't crash when a duplicate interface/protocol is inside an extern "C" context. 2011-11-13 22:08:30 +00:00
objc-pointer-conv.mm Fix an objc++ diagnostic initializing objc pointers. 2011-03-21 19:08:42 +00:00
objc2-merge-gc-attribue-decl.mm Adds support for ObjC++'s GC attribute on declaration of 2010-05-19 21:37:30 +00:00
overload-1.mm Test for my last patch. 2010-05-03 21:06:59 +00:00
overload-gc.mm Relax the conversion rules for Objective-C GC qualifiers a 2011-05-08 06:09:53 +00:00
overload.mm "Accidentally" fixed a bug with overloading of functions with 2011-12-15 17:20:18 +00:00
parameters.mm Diagnose C++ abstract parameters for Objective-C methods. 2011-04-23 02:46:06 +00:00
pointer-to-objc-pointer-conv.mm In Sema::AddBuiltinOperatorCandidates, candidate pointer types set can also contain a ObjCObjectPointerType since r111699. 2010-08-23 07:12:16 +00:00
propert-dot-error.mm Restore r142914 and r142915, now with missing file and apparent 2011-10-25 17:37:35 +00:00
properties.mm In Objective-C++, allow the keyword 'class' to be used as a property 2012-02-16 18:19:22 +00:00
property-reference.mm objc++: patch for IRgen for atomic properties of 2012-01-10 00:37:01 +00:00
property-synthesis-error.mm objc++: patch for IRgen for atomic properties of 2012-01-10 00:37:01 +00:00
property-type-mismatch.mm objc++: Some level of covariance is allowed in ObjC properties. 2011-07-13 17:55:01 +00:00
protocol-lookup.mm Teach the C++ simple-type-specifier parser and tentative parses about 2010-10-21 23:17:00 +00:00
references.mm Warn for any kind of initialization if initializer does not 2011-04-08 18:25:29 +00:00
reinterpret-cast-objc-pointertype.mm
related-result-type-inference.mm Eliminate the -f[no]objc-infer-related-result-type flags; there's no 2011-06-13 16:42:53 +00:00
reserved-keyword-methods.mm Use ParseObjCSelectorPiece for parsing getter and setter names in @property declarations. Fixes PR8169. 2010-10-02 17:45:21 +00:00
standard-conversion-to-bool.mm
static-cast.mm Objective-C++ Sema - Allow static_cast of one objc pointer to 2010-05-12 18:16:59 +00:00
unknown-anytype.mm Fixed some testsuite problems introduced by my 2012-02-04 02:28:18 +00:00
vararg-non-pod.mm [frontend] Don't allow a mapping to a warning override an error/fatal mapping. 2012-02-03 01:49:51 +00:00
vla.mm Implement support for variable length arrays in C++. VLAs are limited 2010-05-22 16:17:30 +00:00
void_to_obj.mm Allow static_cast to objective-c pointers. 2010-05-10 23:46:53 +00:00
warn-strict-selector-match.mm Modify how the -verify flag works. Currently, the verification string and 2011-12-15 00:38:15 +00:00