diff options
author | Ted Kremenek <kremenek@apple.com> | 2009-03-07 01:36:13 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2009-03-07 01:36:13 +0000 |
commit | a44b4f987c30ceb60a9200c000a8adc4b05ae690 (patch) | |
tree | 7b1ec823293f007be01bcb98bef65d17b5460325 /clang/lib | |
parent | 0666a6ce703631d6f0c107afb6a42758208a6c42 (diff) | |
download | bcm5719-llvm-a44b4f987c30ceb60a9200c000a8adc4b05ae690.tar.gz bcm5719-llvm-a44b4f987c30ceb60a9200c000a8adc4b05ae690.zip |
Teach Diagnostic about Selector.
llvm-svn: 66314
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/Basic/Diagnostic.cpp | 8 | ||||
-rw-r--r-- | clang/lib/Sema/SemaDeclObjC.cpp | 4 |
2 files changed, 10 insertions, 2 deletions
diff --git a/clang/lib/Basic/Diagnostic.cpp b/clang/lib/Basic/Diagnostic.cpp index 893eae5d1a9..84d4055b78e 100644 --- a/clang/lib/Basic/Diagnostic.cpp +++ b/clang/lib/Basic/Diagnostic.cpp @@ -657,6 +657,14 @@ FormatDiagnostic(llvm::SmallVectorImpl<char> &OutStr) const { OutStr.push_back('\''); break; } + case Diagnostic::ak_selector: { + Selector S = getArgSelector(ArgNo); + OutStr.push_back('\''); + const std::string &s = S.getAsString(); + OutStr.append(&s[0], &s[0]+s.length()); + OutStr.push_back('\''); + break; + } case Diagnostic::ak_qualtype: case Diagnostic::ak_declarationname: case Diagnostic::ak_nameddecl: diff --git a/clang/lib/Sema/SemaDeclObjC.cpp b/clang/lib/Sema/SemaDeclObjC.cpp index f91feb423f9..a26581824f9 100644 --- a/clang/lib/Sema/SemaDeclObjC.cpp +++ b/clang/lib/Sema/SemaDeclObjC.cpp @@ -1139,7 +1139,7 @@ void Sema::ProcessPropertyDecl(ObjCPropertyDecl *property, Diag(property->getLocation(), diag::err_accessor_property_type_mismatch) << property->getDeclName() - << GetterMethod->getSelector().getAsString(); + << GetterMethod->getSelector(); Diag(GetterMethod->getLocation(), diag::note_declared_at); } @@ -1152,7 +1152,7 @@ void Sema::ProcessPropertyDecl(ObjCPropertyDecl *property, Diag(property->getLocation(), diag::err_accessor_property_type_mismatch) << property->getDeclName() - << SetterMethod->getSelector().getAsString(); + << SetterMethod->getSelector(); Diag(SetterMethod->getLocation(), diag::note_declared_at); } } |