diff options
author | Ismail Pazarbasi <ismail.pazarbasi@gmail.com> | 2014-05-08 11:28:25 +0000 |
---|---|---|
committer | Ismail Pazarbasi <ismail.pazarbasi@gmail.com> | 2014-05-08 11:28:25 +0000 |
commit | 49ff754d4be5d8eb84f71eb2d97156901d4290cd (patch) | |
tree | f807a2ca05fb8ce030084061625f1b5707c98149 /clang/include | |
parent | a2fa84edbf65b0e2e6dba958c140de79f8c2749d (diff) | |
download | bcm5719-llvm-49ff754d4be5d8eb84f71eb2d97156901d4290cd.tar.gz bcm5719-llvm-49ff754d4be5d8eb84f71eb2d97156901d4290cd.zip |
Suggest fix-it ':' when '=' used in for-range-declaration
Fix for PR19176. Clang will suggest a fix-it hint for cases like:
int arr[] = {1, 2, 3, 4};
for (auto i = arr)
^
:
llvm-svn: 208299
Diffstat (limited to 'clang/include')
-rw-r--r-- | clang/include/clang/Basic/DiagnosticParseKinds.td | 2 | ||||
-rw-r--r-- | clang/include/clang/Parse/Parser.h | 6 |
2 files changed, 6 insertions, 2 deletions
diff --git a/clang/include/clang/Basic/DiagnosticParseKinds.td b/clang/include/clang/Basic/DiagnosticParseKinds.td index 335b6abf134..70e16ceca1c 100644 --- a/clang/include/clang/Basic/DiagnosticParseKinds.td +++ b/clang/include/clang/Basic/DiagnosticParseKinds.td @@ -204,6 +204,8 @@ def err_expected_semi_after_attribute_list : Error< def err_expected_semi_after_static_assert : Error< "expected ';' after static_assert">; def err_expected_semi_for : Error<"expected ';' in 'for' statement specifier">; +def err_single_decl_assign_in_for_range : Error< + "range based for statement requires ':' after range declaration">; def warn_missing_selector_name : Warning< "%0 used as the name of the previous parameter rather than as part " "of the selector">, diff --git a/clang/include/clang/Parse/Parser.h b/clang/include/clang/Parse/Parser.h index 0b15eb68417..79c65c6db47 100644 --- a/clang/include/clang/Parse/Parser.h +++ b/clang/include/clang/Parse/Parser.h @@ -1727,8 +1727,10 @@ private: Decl *ParseDeclarationAfterDeclarator(Declarator &D, const ParsedTemplateInfo &TemplateInfo = ParsedTemplateInfo()); bool ParseAsmAttributesAfterDeclarator(Declarator &D); - Decl *ParseDeclarationAfterDeclaratorAndAttributes(Declarator &D, - const ParsedTemplateInfo &TemplateInfo = ParsedTemplateInfo()); + Decl *ParseDeclarationAfterDeclaratorAndAttributes( + Declarator &D, + const ParsedTemplateInfo &TemplateInfo = ParsedTemplateInfo(), + ForRangeInit *FRI = nullptr); Decl *ParseFunctionStatementBody(Decl *Decl, ParseScope &BodyScope); Decl *ParseFunctionTryBlock(Decl *Decl, ParseScope &BodyScope); |