diff options
| author | Fariborz Jahanian <fjahanian@apple.com> | 2013-12-10 22:22:45 +0000 |
|---|---|---|
| committer | Fariborz Jahanian <fjahanian@apple.com> | 2013-12-10 22:22:45 +0000 |
| commit | ddd28dc06129870e8dee6201aca18c092312722b (patch) | |
| tree | 4ac4ca9c6aacbea615afb76a2f2ac1b3efaf9085 | |
| parent | 002f8aa584810cf076a9bc136e16246f7226d6c6 (diff) | |
| download | bcm5719-llvm-ddd28dc06129870e8dee6201aca18c092312722b.tar.gz bcm5719-llvm-ddd28dc06129870e8dee6201aca18c092312722b.zip | |
Objective-C. Minor change to a diagnostic.
// rdar://15499111
llvm-svn: 196977
| -rw-r--r-- | clang/include/clang/Basic/DiagnosticSemaKinds.td | 4 | ||||
| -rw-r--r-- | clang/lib/Sema/SemaExprObjC.cpp | 4 | ||||
| -rw-r--r-- | clang/test/SemaObjC/arc-objcbridge-related-attribute.m | 10 | ||||
| -rw-r--r-- | clang/test/SemaObjC/objcbridge-related-attribute.m | 10 |
4 files changed, 13 insertions, 15 deletions
diff --git a/clang/include/clang/Basic/DiagnosticSemaKinds.td b/clang/include/clang/Basic/DiagnosticSemaKinds.td index ddfac336ded..46d152318b2 100644 --- a/clang/include/clang/Basic/DiagnosticSemaKinds.td +++ b/clang/include/clang/Basic/DiagnosticSemaKinds.td @@ -2472,9 +2472,7 @@ def err_objc_bridged_related_invalid_class : Error< def err_objc_bridged_related_invalid_class_name : Error< "%0 must be name of an Objective-C class to be able to convert %1 to %2">; def err_objc_bridged_related_unknown_method : Error< - "%0 cannot be directly converted to %1; specify " - "%select{a class|an instance}2 method in objc_bridge_related attribute" - " for this conversion">; + "%0 cannot be directly converted to %1">; def err_objc_bridged_related_known_method : Error< "%0 must be explicitly converted to %1; use %select{%objcclass2|%objcinstance2}3 " "method for this conversion">; diff --git a/clang/lib/Sema/SemaExprObjC.cpp b/clang/lib/Sema/SemaExprObjC.cpp index 960700bd5cf..aeb934c3811 100644 --- a/clang/lib/Sema/SemaExprObjC.cpp +++ b/clang/lib/Sema/SemaExprObjC.cpp @@ -3460,7 +3460,7 @@ Sema::CheckObjCBridgeRelatedConversions(SourceLocation Loc, } else Diag(Loc, diag::err_objc_bridged_related_unknown_method) - << SrcType << DestType << false; + << SrcType << DestType; Diag(RelatedClass->getLocStart(), diag::note_declared_at); Diag(TDNDecl->getLocStart(), diag::note_declared_at); } @@ -3480,7 +3480,7 @@ Sema::CheckObjCBridgeRelatedConversions(SourceLocation Loc, } else Diag(Loc, diag::err_objc_bridged_related_unknown_method) - << SrcType << DestType << true; + << SrcType << DestType; Diag(RelatedClass->getLocStart(), diag::note_declared_at); Diag(TDNDecl->getLocStart(), diag::note_declared_at); } diff --git a/clang/test/SemaObjC/arc-objcbridge-related-attribute.m b/clang/test/SemaObjC/arc-objcbridge-related-attribute.m index d92c636da8d..58485a7e7b4 100644 --- a/clang/test/SemaObjC/arc-objcbridge-related-attribute.m +++ b/clang/test/SemaObjC/arc-objcbridge-related-attribute.m @@ -25,9 +25,9 @@ NSColor * Test1(NSTextField *textField, CGColorRef newColor) { } NSColor * Test2(NSTextField *textField, CGColorRef1 newColor) { - foo(newColor); // expected-error {{'CGColorRef1' (aka 'struct CGColor1 *') cannot be directly converted to 'NSColor *'; specify a class method in objc_bridge_related attribute for this conversion}} - textField.backgroundColor = newColor; // expected-error {{'CGColorRef1' (aka 'struct CGColor1 *') cannot be directly converted to 'NSColor *__strong'; specify a class method in objc_bridge_related attribute for this conversion}} - return newColor; // expected-error {{'CGColorRef1' (aka 'struct CGColor1 *') cannot be directly converted to 'NSColor *'; specify a class method in objc_bridge_related attribute for this conversion}} + foo(newColor); // expected-error {{'CGColorRef1' (aka 'struct CGColor1 *') cannot be directly converted to 'NSColor *'}} + textField.backgroundColor = newColor; // expected-error {{'CGColorRef1' (aka 'struct CGColor1 *') cannot be directly converted to 'NSColor *__strong'}} + return newColor; // expected-error {{'CGColorRef1' (aka 'struct CGColor1 *') cannot be directly converted to 'NSColor *'}} } CGColorRef Test3(NSTextField *textField, CGColorRef newColor) { @@ -36,6 +36,6 @@ CGColorRef Test3(NSTextField *textField, CGColorRef newColor) { } CGColorRef2 Test4(NSTextField *textField, CGColorRef2 newColor) { - newColor = textField.backgroundColor; // expected-error {{'NSColor *' cannot be directly converted to 'CGColorRef2' (aka 'struct CGColor2 *'); specify an instance method in objc_bridge_related attribute for this conversion}} - return textField.backgroundColor; // expected-error {{'NSColor *' cannot be directly converted to 'CGColorRef2' (aka 'struct CGColor2 *'); specify an instance method in objc_bridge_related attribute for this conversion}} + newColor = textField.backgroundColor; // expected-error {{'NSColor *' cannot be directly converted to 'CGColorRef2' (aka 'struct CGColor2 *')}} + return textField.backgroundColor; // expected-error {{'NSColor *' cannot be directly converted to 'CGColorRef2' (aka 'struct CGColor2 *')}} } diff --git a/clang/test/SemaObjC/objcbridge-related-attribute.m b/clang/test/SemaObjC/objcbridge-related-attribute.m index a6d5e2eb97f..36a82b21c09 100644 --- a/clang/test/SemaObjC/objcbridge-related-attribute.m +++ b/clang/test/SemaObjC/objcbridge-related-attribute.m @@ -25,9 +25,9 @@ NSColor * Test1(NSTextField *textField, CGColorRef newColor) { } NSColor * Test2(NSTextField *textField, CGColorRef1 newColor) { - foo(newColor); // expected-error {{'CGColorRef1' (aka 'struct CGColor1 *') cannot be directly converted to 'NSColor *'; specify a class method in objc_bridge_related attribute for this conversion}} - textField.backgroundColor = newColor; // expected-error {{'CGColorRef1' (aka 'struct CGColor1 *') cannot be directly converted to 'NSColor *'; specify a class method in objc_bridge_related attribute for this conversion}} - return newColor; // expected-error {{'CGColorRef1' (aka 'struct CGColor1 *') cannot be directly converted to 'NSColor *'; specify a class method in objc_bridge_related attribute for this conversion}} + foo(newColor); // expected-error {{'CGColorRef1' (aka 'struct CGColor1 *') cannot be directly converted to 'NSColor *'}} + textField.backgroundColor = newColor; // expected-error {{'CGColorRef1' (aka 'struct CGColor1 *') cannot be directly converted to 'NSColor *'}} + return newColor; // expected-error {{'CGColorRef1' (aka 'struct CGColor1 *') cannot be directly converted to 'NSColor *'}} } CGColorRef Test3(NSTextField *textField, CGColorRef newColor) { @@ -36,6 +36,6 @@ CGColorRef Test3(NSTextField *textField, CGColorRef newColor) { } CGColorRef2 Test4(NSTextField *textField, CGColorRef2 newColor) { - newColor = textField.backgroundColor; // expected-error {{'NSColor *' cannot be directly converted to 'CGColorRef2' (aka 'struct CGColor2 *'); specify an instance method in objc_bridge_related attribute for this conversion}} - return textField.backgroundColor; // expected-error {{'NSColor *' cannot be directly converted to 'CGColorRef2' (aka 'struct CGColor2 *'); specify an instance method in objc_bridge_related attribute for this conversion}} + newColor = textField.backgroundColor; // expected-error {{'NSColor *' cannot be directly converted to 'CGColorRef2' (aka 'struct CGColor2 *')}} + return textField.backgroundColor; // expected-error {{'NSColor *' cannot be directly converted to 'CGColorRef2' (aka 'struct CGColor2 *')}} } |

