diff options
| author | Daniel Jasper <djasper@google.com> | 2013-07-08 14:58:01 +0000 |
|---|---|---|
| committer | Daniel Jasper <djasper@google.com> | 2013-07-08 14:58:01 +0000 |
| commit | 6a09df7964e4134d81fef8361852cefc606ad387 (patch) | |
| tree | cce3a0a7c80ffab3f4a0dbbe35c9865a6387ab3a | |
| parent | 4c409494d85d0e0ea5db8b250224ed25e45ed592 (diff) | |
| download | bcm5719-llvm-6a09df7964e4134d81fef8361852cefc606ad387.tar.gz bcm5719-llvm-6a09df7964e4134d81fef8361852cefc606ad387.zip | |
Fix incorrect incorrect cast identification in clang-format.
This fixes llvm.org/PR16534.
Before:
aaaaa& operator+(const aaaaa&)LLVM_DELETED_FUNCTION;
After:
aaaaa& operator+(const aaaaa&) LLVM_DELETED_FUNCTION;
llvm-svn: 185828
| -rw-r--r-- | clang/lib/Format/TokenAnnotator.cpp | 1 | ||||
| -rw-r--r-- | clang/unittests/Format/FormatTest.cpp | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/clang/lib/Format/TokenAnnotator.cpp b/clang/lib/Format/TokenAnnotator.cpp index 1bcdac8e21a..3c2ae52c998 100644 --- a/clang/lib/Format/TokenAnnotator.cpp +++ b/clang/lib/Format/TokenAnnotator.cpp @@ -633,6 +633,7 @@ private: // there is also an identifier before the (). if (LeftOfParens && (LeftOfParens->Tok.getIdentifierInfo() == NULL || LeftOfParens->is(tok::kw_return)) && + LeftOfParens->Type != TT_OverloadedOperator && LeftOfParens->Type != TT_TemplateCloser && Current.Next && Current.Next->is(tok::identifier)) IsCast = true; diff --git a/clang/unittests/Format/FormatTest.cpp b/clang/unittests/Format/FormatTest.cpp index dd137aabd6d..2afd91e482f 100644 --- a/clang/unittests/Format/FormatTest.cpp +++ b/clang/unittests/Format/FormatTest.cpp @@ -3498,6 +3498,7 @@ TEST_F(FormatTest, FormatsCasts) { verifyFormat("int a = alignof(int) * b;", getGoogleStyle()); verifyFormat("template <> void f<int>(int i) SOME_ANNOTATION;"); verifyFormat("f(\"%\" SOME_MACRO(ll) \"d\");"); + verifyFormat("aaaaa &operator=(const aaaaa &) LLVM_DELETED_FUNCTION;"); // These are not casts, but at some point were confused with casts. verifyFormat("virtual void foo(int *) override;"); |

