llvm-project/clang/test/SemaObjCXX
Richard Smith 943c440455 Improvements to vexing-parse warnings. Make the no-parameters case more
accurate by asking the parser whether there was an ambiguity rather than trying
to reverse-engineer it from the DeclSpec. Make the with-parameters case have
better diagnostics by using semantic information to drive the warning,
improving the diagnostics and adding a fixit.

Patch by Nikola Smiljanic. Some minor changes by me to suppress diagnostics for
declarations of the form 'T (*x)(...)', which seem to have a very high false
positive rate, and to reduce indentation in 'warnAboutAmbiguousFunction'.

llvm-svn: 160998
2012-07-30 21:30:52 +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 Test that -Wauto-var-id fires in value-dependent contexts. 2012-06-15 18:19:43 +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 Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +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 When performing the deduced/actual argument type check for C++ 2012-07-18 00:14:59 +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 When we have an Objective-C object with non-trivial lifetime in a 2012-07-23 04:23:39 +00:00
arc-unavailable-for-weakref.mm Improve text of a diagnostic. 2011-10-31 17:27:06 +00:00
arc-unbridged-cast.mm objective-c arc: When function calls with known CFCreate naming convention 2012-07-27 22:37:07 +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 Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +00:00
boxing-illegal-types.mm Allow objc @() syntax for enum types. 2012-05-15 19:17:44 +00:00
category-lookup.mm
composite-objc-pointertype.mm Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +00:00
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
crash.mm HandleDeclarator() returns NULL for semantic disasters. Deal with it 2012-04-30 18:13:01 +00:00
cstyle-block-pointer-cast.mm Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +00:00
cstyle-cast.mm Provide overload diagnostics when explicit casts involving class types fail. 2011-02-14 18:34:10 +00:00
cxxoperator-selector.mm Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +00:00
debugger-cast-result-to-id.mm lldb support: under debugger support flag, when sending message 2012-03-09 18:47:16 +00:00
deduction.mm Permit template argument deduction to add qualifiers within ObjC object 2010-08-05 05:30:45 +00:00
delay-parsing-cfunctions.mm Fixes an ObjC++ parse crash caused by delayed parsing 2012-07-20 17:19:54 +00:00
exceptions-fragile.mm Restructure how the driver communicates information about the 2012-06-20 06:18:46 +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
foreach.mm objective-c++11: extend c++11 range-based loop to iterate 2012-07-06 19:04:04 +00:00
fragile-abi-object-assign.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +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 Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +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 Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +00:00
instantiate-stmt.mm objective-c: improve diagnostic when collection expression is 2012-06-22 15:37:00 +00:00
ivar-construct.mm Teach RequireCompleteType about multi-dimensional arrays. Fixes 2012-04-23 16:42:52 +00:00
ivar-lookup.mm Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +00:00
ivar-reference-type.mm
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 objective-c modern translator: buildit objc bool 2012-04-16 21:03:30 +00:00
message.mm Restructure how the driver communicates information about the 2012-06-20 06:18:46 +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 Capitalize "Objective-C" and "C++" in user-facing contexts. 2012-07-19 18:10:18 +00:00
objc-decls-inside-namespace.mm Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +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 Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +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 Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +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 Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +00:00
properties.mm Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +00:00
property-reference.mm super and class property reference expressions don't need to be 2012-04-13 15:53:08 +00:00
property-synthesis-error.mm Add a missing RequireCompleteType call when synthesizing properties. <rdar://problem/11333367>. 2012-05-01 22:26:06 +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 Improvements to vexing-parse warnings. Make the no-parameters case more 2012-07-30 21:30:52 +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 Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. 2012-04-06 18:12:22 +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