llvm-project/clang/test/SemaObjC
Alex Lorenz d9f1284009 [ObjC] Add a -Wobjc-messaging-id warning
-Wobjc-messaging-id is a new, non-default warning that warns about
message sends to unqualified id in Objective-C. This warning is useful
for projects that would like to avoid any potential future compiler
errors/warnings, as the system frameworks might add a method with the same
selector which could make the message send to id ambiguous.

rdar://33303354

llvm-svn: 311779
2017-08-25 16:12:17 +00:00
..
Inputs Recommit r308327 3rd time: Add a warning for missing 2017-07-28 14:41:21 +00:00
ClassPropertyNotObject.m
ContClassPropertyLookup.m
DoubleMethod.m
NSString-type.m
access-property-getter.m
alias-test-1.m
alias-test-2.m
arc-bridged-cast.m
arc-cf.m
arc-decls.m
arc-dict-bridged-cast.m
arc-invalid.m
arc-jump-block.m
arc-no-runtime.m
arc-non-pod-memaccess.m
arc-nsconsumed-errors.m
arc-objc-lifetime-conflict.m
arc-objc-lifetime.m
arc-objcbridge-related-attribute.m
arc-peformselector.m [ObjC][ARC] Avoid -Warc-performSelector-leaks for performSelector variations 2017-03-23 10:46:05 +00:00
arc-property-decl-attrs.m [ObjC] Check written attributes only when synthesizing ambiguous property 2017-08-22 10:38:07 +00:00
arc-property-lifetime.m
arc-property.m
arc-readonly-property-ivar-1.m
arc-readonly-property-ivar.m
arc-repeated-weak.mm [Objective-C] Fix "repeated use of weak" warning with -fobjc-weak 2017-03-29 17:55:11 +00:00
arc-setter-property-match.m
arc-system-header.m
arc-type-conversion.m
arc-unavailable-for-weakref.m [Objective-C] Fix "weak-unavailable" warning with -fobjc-weak 2017-03-29 18:09:02 +00:00
arc-unavailable-system-function.m
arc-unbridged-cast.m
arc-unsafe-assigns.m
arc-unsafe_unretained.m
arc.m Use correct fix-it location for -Wblock-capture-autoreleasing 2017-02-16 23:15:36 +00:00
argument-checking.m
assign-rvalue-message.m DR616, and part of P0135R1: member access (or pointer-to-member access) on a 2016-12-03 01:14:32 +00:00
at-defs.m
atomoic-property-synnthesis-rules.m
attr-availability-1.m AvailabilityAttr: we accept "macos" as the platform name. 2016-06-28 20:55:30 +00:00
attr-availability.m [Sema] Improve some -Wunguarded-availability diagnostics 2017-08-14 19:49:12 +00:00
attr-cf_returns.m
attr-cleanup.m
attr-deprecated-pch.m
attr-deprecated.m [Sema][ObjC] Don't emit availability diags for category @implementations 2017-05-31 15:45:57 +00:00
attr-designated-init.m
attr-malloc.m
attr-nodebug.m
attr-ns_returns_retained.m Use ARC parsing rules for ns_returns_retained in MRC so that code can 2017-07-15 11:06:46 +00:00
attr-objc-exception.m
attr-objc-gc.m
attr-objc-runtime-visible.m
attr-print.m
attr-root-class.m
autoreleasepool.m
bad-property-synthesis-crash.m
bad-receiver-1.m
block-as-object.m
block-attr.m
block-explicit-return-type.m
block-id-as-block-argtype.m
block-ivar.m
block-omitted-return-type.m [ObjC] The declarator for a block literal should be a definition 2017-01-06 11:31:12 +00:00
block-on-method-param.m
block-return.m
block-type-safety.m
blocks.m
bool-type.m
boxing-illegal.m
builtin_objc_assign_ivar.m
builtin_objc_lib_functions.m
builtin_objc_msgSend.m
builtin_objc_nslog.m
call-super-2.m [SemaObjC] Do not RebuildObjCMessageExpr without valid method decl 2016-08-22 21:50:22 +00:00
catch-stmt.m
category-1.m
category-attribute.m Support attributes for Objective-C categories 2017-03-23 11:44:25 +00:00
category-method-lookup-2.m
category-method-lookup.m
check-dup-decl-methods-1.m
check-dup-objc-decls-1.m Add -Wduplicate-protocol for existing diagnostic 2016-11-10 18:30:26 +00:00
check-objcbridge-related-attribute-lookup.m
circular-container.m
class-bitfield.m
class-conforming-protocol-1.m
class-conforming-protocol-2.m
class-def-test-1.m
class-extension-after-implementation.m
class-extension-dup-methods.m
class-getter-using-dotsyntax.m
class-impl-1.m
class-message-protocol-lookup.m [ObjC][Sema] Avoid warning about a call to an instance method on an 2017-03-15 17:16:41 +00:00
class-method-lookup.m
class-method-self.m
class-property-access.m
class-proto-1.m
class-protocol-method-match.m
class-protocol.m
class-unavail-warning.m [Sema][ObjC] Don't emit availability diags for category @implementations 2017-05-31 15:45:57 +00:00
cocoa-api-usage.m
cocoa-api-usage.m.fixed
compare-qualified-class.m
compare-qualified-id.m
compatible-protocol-qualified-types.m
compound-init.m
comptypes-1.m
comptypes-2.m
comptypes-3.m
comptypes-4.m
comptypes-5.m
comptypes-6.m
comptypes-7.m
comptypes-8.m
comptypes-9.m
comptypes-10.m
comptypes-a.m
comptypes-legal.m
conditional-expr-2.m
conditional-expr-3.m
conditional-expr-4.m
conditional-expr-5.m
conditional-expr-6.m
conditional-expr-7.m
conditional-expr-8.m
conditional-expr.m
conflict-atomic-property.m
conflict-nonfragile-abi2.m
conflicting-ivar-test-1.m
continuation-class-err.m
continuation-class-property.m
conversion.m
crash-label.m
crash-on-objc-bool-literal.m
crash-on-type-args-protocols.m [SemaObjC] Be more strict while parsing type arguments and protocols 2016-09-13 20:04:35 +00:00
custom-atomic-property.m
dealloc.m
debugger-cast-result-to-id.m
debugger-support.m
default-synthesize-1.m [Sema] Silence -Wobjc-missing-property-synthesis for unavailable properties 2017-08-15 12:40:01 +00:00
default-synthesize-2.m
default-synthesize-3.m Add a fixit for -Wobjc-protocol-property-synthesis 2017-07-03 10:12:24 +00:00
default-synthesize.m Add a fixit for -Wobjc-protocol-property-synthesis 2017-07-03 10:12:24 +00:00
delay-parsing-cfunctions.m
deprecate_function_containers.m
deprecated-objc-introspection.m
deref-interface.m
diagnose_if.m Change __has_feature(objc_diagnose_if_attr) to __has_feature(attribute_diagnose_if_objc) for consistency with rest of attribute checks. 2017-05-24 01:38:00 +00:00
direct-synthesized-ivar-access.m
dist-object-modifiers.m
dllexport.m Sema: support __declspec(dll*) on ObjC interfaces 2016-07-15 20:41:10 +00:00
dllimport.m Sema: support __declspec(dll*) on ObjC interfaces 2016-07-15 20:41:10 +00:00
duplicate-ivar-check.m
duplicate-ivar-in-class-extension.m
duplicate-property-class-extension.m
duplicate-property.m
encode-typeof-test.m
enhanced-proto-2.m
enum-fixed-type.m
err-ivar-access-in-class-method.m
error-implicit-property.m
error-missing-getter.m
error-outof-scope-property-use.m
error-property-gc-attr.m
exprs.m
foreach.m [Sema][ObjC] Disallow jumping into ObjC fast enumeration loops. 2017-04-19 17:54:08 +00:00
format-arg-attribute.m
format-cstrings-warning.m
format-ostrace-warning.m
format-strings-objc.m Fix printf specifier handling: invalid specifier should not be marked as "consuming data arguments" 2016-12-15 18:54:00 +00:00
format-strings-oslog.m Fix diagnostic format string for err_os_log_argument_to_big 2016-10-25 12:39:28 +00:00
format-strings-system.h
format-strings-utf8.m
forward-class-1.m
forward-class-receiver.m
forward-class-redeclare.m
forward-protocol-incomplete-impl-warn.m Add a fixit for -Wobjc-protocol-property-synthesis 2017-07-03 10:12:24 +00:00
gc-attributes.m
gcc-cast-ext.m
generic-selection.m
getter-setter-defined-in-category-of-parent.m
ibaction.m
iboutlet.m
iboutletcollection-attr.m
id.m
id_builtin.m
idiomatic-parentheses.m
ignore-qualifier-on-qualified-id.m
ignore-weakimport-method.m
illegal-nonarc-bridged-cast.m [Sema][ObjC] Fix spurious -Wcast-qual warnings. 2017-08-11 00:06:49 +00:00
incompatible-protocol-qualified-types.m
incomplete-implementation.m
inst-method-lookup-in-root.m
instancetype.m
interface-1.m
interface-layout-2.m
interface-layout.m
interface-scope-2.m
interface-scope.m
interface-tu-variable.m
invalid-code.m
invalid-objc-decls-1.m
invalid-receiver.m
invalid-typename.m
ivar-access-package.m
ivar-access-tests.m
ivar-in-class-extension-error.m
ivar-in-class-extension.m
ivar-in-implementations.m
ivar-lookup-resolution-builtin.m
ivar-lookup.m
ivar-ref-misuse.m
ivar-sem-check-1.m
ivar-sem-check-2.m
kindof.m ObjectiveC Generics: Start using ObjCTypeParamType. 2016-09-13 17:41:05 +00:00
legacy-implementation-1.m
message.m
method-arg-qualifier-warning.m
method-attributes.m
method-bad-param.m Fix errored return value in CheckFunctionReturnType and add a fixit hint 2017-05-10 20:03:16 +00:00
method-conflict-1.m
method-conflict-2.m
method-conflict.m
method-def-1.m
method-def-2.m
method-encoding-2.m
method-in-class-extension-impl.m
method-lookup-2.m
method-lookup-3.m
method-lookup-4.m
method-lookup-5.m
method-lookup.m
method-no-context.m
method-not-defined.m
method-prototype-scope.m
method-redecls-invalid-interface.m [ObjC] Prevent infinite loops when iterating over redeclaration 2016-11-21 11:16:30 +00:00
method-sentinel-attr.m
method-typecheck-1.m
method-typecheck-2.m
method-typecheck-3.m
method-undef-category-warn-1.m
method-undef-extension-warn-1.m
method-undefined-warn-1.m
method-unused-attribute.m
method-warn-unused-attribute.m
mismatched-undefined-method.m
missing-atend-metadata.m
missing-method-context.m
missing-method-return-type.m
mrc-no-weak.m
mrc-weak.m
multiple-method-names.m
multiple-property-deprecated-decl.m
narrow-property-type-in-cont-class.m
nested-typedef-decl.m
newproperty-class-method-1.m
no-gc-weak-test.m
no-ivar-access-control.m
no-ivar-in-interface-block.m
no-objc-exceptions.m
no-protocol-option-tests.m
no-warn-qual-mismatch.m
no-warn-synth-protocol-meth.m
no-warn-unimpl-method.m
no-warning-unavail-unimp.m
nonnull.h
nonnull.m
nowarn-superclass-method-mismatch.m
ns_returns_retained_block_return.m
nsobject-attribute-1.m
nsobject-attribute.m Objective-C diagnostics: isObjCNSObjectType should check through AttributedType. 2016-08-15 21:05:00 +00:00
nullability-arc.m
nullability.m Accept nullability qualifiers on array parameters. 2016-11-10 23:28:17 +00:00
nullable-weak-property.m
objc-array-literal.m [SemaObjC] Improve ObjCDictionaryLiteral and ObjCArryLiteral diagnostics 2016-07-19 20:21:18 +00:00
objc-asm-attribute-neg-test.m
objc-boxed-expressions-nsvalue.m
objc-buffered-methods.m
objc-cf-audited-warning.m
objc-class-property.m Sema: use PropertyDecl for property selector 2017-02-20 23:45:49 +00:00
objc-container-subscripting-1.m [ObjC] Check that a subscript methods is declared for a qualified id type 2017-07-11 10:18:35 +00:00
objc-container-subscripting-2.m [ObjC] Check that a subscript methods is declared for a qualified id type 2017-07-11 10:18:35 +00:00
objc-container-subscripting-3.m
objc-container-subscripting-attr.m
objc-container-subscripting.m
objc-cstyle-args-in-methods.m
objc-dictionary-literal.m [SemaObjC] Improve ObjCDictionaryLiteral and ObjCArryLiteral diagnostics 2016-07-19 20:21:18 +00:00
objc-independent-class-attribute.m
objc-literal-comparison.m
objc-literal-nsnumber.m
objc-literal-sig.m
objc-mixed-bridge-attribute.m
objc-qualified-property-lookup.m
objc-string-constant.m
objc2-merge-gc-attribue-decl.m
objc2-warn-weak-decl.m
objcbridge-attribute-arc.m [PS4] Undo dialect tweak for Objective-C. 2016-12-14 02:06:11 +00:00
objcbridge-attribute.m
objcbridge-related-attribute.m
objcbridgemutable-attribute.m
opaque-is-access-warn.m
opaque-is-access.m
override-nullability.m
overriding-property-in-class-extension.m
ovl-check.m
parameterized_classes.m
parameterized_classes_arc.m
parameterized_classes_collection_literal.m
parameterized_classes_subst.m ObjectiveC Generics: Start using ObjCTypeParamType. 2016-09-13 17:41:05 +00:00
pedantic-dynamic-test.m
pragma-pack.m
property-2.m
property-3.m
property-4.m
property-5.m
property-6.m
property-7.m
property-8.m
property-9-impl-method.m
property-9.m
property-10.m
property-11.m
property-12.m
property-13.m
property-ambiguous-synthesis.m [ObjC] Pick a 'readwrite' property when synthesizing ambiguous 2017-07-13 11:06:22 +00:00
property-and-class-extension.m
property-and-ivar-use.m
property-atomic-bool.m
property-atomic-redecl.m
property-category-1.m
property-category-2.m
property-category-3.m
property-category-4.m
property-category-impl.m
property-choose-expr.m
property-deprecated-warning.m [ObjC] Warn on unguarded use of partial declaration 2016-08-16 17:44:11 +00:00
property-dot-receiver.m
property-error-readonly-assign.m
property-expression-error.m
property-impl-misuse.m
property-in-class-extension-1.m
property-in-class-extension.m
property-inherited.m
property-ivar-mismatch.m
property-lookup-in-id.m
property-method-lookup-impl.m
property-missing.m
property-nonfragile-abi.m
property-noninherited-availability-attr.m AvailabilityAttr: we accept "macos" as the platform name. 2016-06-28 20:55:30 +00:00
property-noprotocol-warning.m
property-not-lvalue.m
property-ns-returns-not-retained-attr.m
property-ownership-attr.m
property-redundant-decl-accessor.m
property-typecheck-1.m [Sema][ObjC] Avoid the "type of property does not match type of accessor" 2017-03-30 13:33:51 +00:00
property-user-setter.m
property-weak.m
property.m
props-on-prots.m
protocol-archane.m
protocol-attribute.m
protocol-expr-1.m
protocol-expr-neg-1.m
protocol-id-test-1.m
protocol-id-test-2.m
protocol-id-test-3.m
protocol-implementation-inherited.m
protocol-implementing-class-methods.m
protocol-lookup-2.m
protocol-lookup.m
protocol-qualified-class-unsupported.m
protocol-typecheck.m
protocol-warn.m
protocols-suppress-conformance.m
protocols.m
provisional-ivar-lookup.m
qualified-protocol-method-conflicts.m
rdar6248119.m
rdr-6211479-array-property.m
receiver-forward-class.m
related-result-type-inference.m
resolve-method-in-global-pool.m
restrict-id-type.m
return.m
scope-check.m
selector-1.m
selector-2.m
selector-3.m
selector-4.m
selector-error.m
selector-overload.m
self-assign.m
self-comparison.m
self-declared-in-block.m
self-in-function.m
setter-dotsyntax.m
severe-syntax-error.m
sign-conversion.m
sizeof-interface.m
special-dep-unavail-warning.m Correct class-template deprecation behavior-REDUX 2017-03-23 18:51:54 +00:00
stand-alone-implementation.m
static-ivar-ref-1.m
stmts.m
string.m
subclassing-restricted-attr.m [Objective-C] Add objc_subclassing_restricted attribute 2016-10-28 10:25:10 +00:00
super-cat-prot.m
super-class-protocol-conformance.m
super-dealloc-attribute.m
super-property-message-expr.m
super-property-notation.m
super.m
suspicious-pragma-pack.m Recommit r308327 3rd time: Add a warning for missing 2017-07-28 14:41:21 +00:00
synchronized.m
synth-provisional-ivars-1.m
synth-provisional-ivars.m
synthesize-setter-contclass.m
synthesized-ivar.m
tentative-property-decl.m
transparent-union.m
try-catch.m
typedef-class.m
typo-correction-arc.m
typo-correction.m Sema: correct typo correction for ivars in @implementation 2016-11-17 17:10:54 +00:00
ucn-objc-string.m
undeclared-selector.m
undef-arg-super-method-call.m
undef-class-messagin-error.m
undef-protocol-methods-1.m
undef-superclass-1.m
undefined-protocol-type-1.m
unguarded-availability-new.m [Sema] Improve some -Wunguarded-availability diagnostics 2017-08-14 19:49:12 +00:00
unguarded-availability.m [Sema] Don't emit -Wunguarded-availability for switch cases 2017-08-18 20:20:56 +00:00
unimplemented-protocol-prop.m
uninit-variables.m
unknown-anytype.m
unqualified-to-qualified-class-warn.m
unsafe-perform-selector.m [Sema][ObjC] Warn about 'performSelector' calls with selectors 2017-03-06 15:58:34 +00:00
unused-backing-ivar-warning.m
unused.m
va-method-1.m
warn-assign-property-nscopying.m
warn-cast-of-sel-expr.m
warn-category-method-deprecated.m
warn-deprecated-implementations.m Extend -Wdeprecated-implementations to warn about unavailable methods 2017-07-13 16:37:11 +00:00
warn-direct-ivar-access.m
warn-explicit-call-initialize.m
warn-forward-class-attr-deprecated.m
warn-implicit-atomic-property.m
warn-implicit-self-in-block.m
warn-incompatible-builtin-types.m
warn-loop-analysis.m
warn-messaging-id.mm [ObjC] Add a -Wobjc-messaging-id warning 2017-08-25 16:12:17 +00:00
warn-missing-super.m
warn-protocol-method-deprecated.m
warn-retain-block-property.m
warn-retain-cycle.m
warn-selector-selection.m
warn-strict-selector-match.m
warn-superclass-method-mismatch.m
warn-thread-safety-analysis.m
warn-unreachable.m
warn-unused-exception-param.m
warn-weak-field.m
warn-write-strings.m
warning-missing-selector-name.m
weak-attr-ivar.m
weak-property.m
writable-property-in-superclass.m
x86-method-vector-values.m [ObjC] Don't disallow vector parameters/return values in methods 2017-05-05 16:15:17 +00:00