diff options
| author | Eli Friedman <eli.friedman@gmail.com> | 2013-06-20 20:58:02 +0000 |
|---|---|---|
| committer | Eli Friedman <eli.friedman@gmail.com> | 2013-06-20 20:58:02 +0000 |
| commit | 600bc24ef083f068c4c5f435a6692fefa88ab25a (patch) | |
| tree | 27fb1c913853fcc530cb27a6b14090571fe21f2c | |
| parent | 65615d40175ac7f602e7d252bd85db88d2a25fcc (diff) | |
| download | bcm5719-llvm-600bc24ef083f068c4c5f435a6692fefa88ab25a.tar.gz bcm5719-llvm-600bc24ef083f068c4c5f435a6692fefa88ab25a.zip | |
Clean up warning and add a test.
llvm-svn: 184466
| -rw-r--r-- | clang/lib/Sema/SemaDeclCXX.cpp | 4 | ||||
| -rw-r--r-- | clang/test/SemaCXX/conversion-function.cpp | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp index 5a70d2a2513..cbe4a2829bb 100644 --- a/clang/lib/Sema/SemaDeclCXX.cpp +++ b/clang/lib/Sema/SemaDeclCXX.cpp @@ -6032,8 +6032,8 @@ void Sema::CheckConversionDeclarator(Declarator &D, QualType &R, if (SC == SC_Static) { if (!D.isInvalidType()) Diag(D.getIdentifierLoc(), diag::err_conv_function_not_member) - << "static" << SourceRange(D.getDeclSpec().getStorageClassSpecLoc()) - << SourceRange(D.getIdentifierLoc()); + << SourceRange(D.getDeclSpec().getStorageClassSpecLoc()) + << D.getName().getSourceRange(); D.setInvalidType(); SC = SC_None; } diff --git a/clang/test/SemaCXX/conversion-function.cpp b/clang/test/SemaCXX/conversion-function.cpp index 6fca0503ba7..0e7c3916171 100644 --- a/clang/test/SemaCXX/conversion-function.cpp +++ b/clang/test/SemaCXX/conversion-function.cpp @@ -11,6 +11,8 @@ public: float g() { return operator float(); // expected-error{{use of undeclared 'operator float'}} } + + static operator short(); // expected-error{{conversion function must be a non-static member function}} }; operator int(); // expected-error{{conversion function must be a non-static member function}} |

