[PATCH] D20817: clang-format: [JS] no ASI on `import {x as\n y}`.
Martin Probst via cfe-commits
cfe-commits at lists.llvm.org
Wed Jun 1 08:29:29 PDT 2016
This revision was automatically updated to reflect the committed changes.
Closed by commit rL271401: clang-format: [JS] no ASI on `import {x as\n y}`. (authored by mprobst).
Changed prior to commit:
http://reviews.llvm.org/D20817?vs=59074&id=59227#toc
Repository:
rL LLVM
http://reviews.llvm.org/D20817
Files:
cfe/trunk/lib/Format/SortJavaScriptImports.cpp
cfe/trunk/lib/Format/UnwrappedLineParser.cpp
cfe/trunk/unittests/Format/FormatTestJS.cpp
Index: cfe/trunk/lib/Format/SortJavaScriptImports.cpp
===================================================================
--- cfe/trunk/lib/Format/SortJavaScriptImports.cpp
+++ cfe/trunk/lib/Format/SortJavaScriptImports.cpp
@@ -245,7 +245,7 @@
SourceLocation SymbolsEnd = Reference.Symbols.back().Range.getEnd();
Buffer += getSourceText(Reference.Range.getBegin(), SymbolsStart);
// ... then the references in order ...
- for (auto *I = Symbols.begin(), *E = Symbols.end(); I != E; ++I) {
+ for (auto I = Symbols.begin(), E = Symbols.end(); I != E; ++I) {
if (I != Symbols.begin())
Buffer += ",";
Buffer += getSourceText(I->Range);
Index: cfe/trunk/lib/Format/UnwrappedLineParser.cpp
===================================================================
--- cfe/trunk/lib/Format/UnwrappedLineParser.cpp
+++ cfe/trunk/lib/Format/UnwrappedLineParser.cpp
@@ -668,11 +668,11 @@
// FIXME: This returns true for C/C++ keywords like 'struct'.
return FormatTok->is(tok::identifier) &&
(FormatTok->Tok.getIdentifierInfo() == nullptr ||
- !FormatTok->isOneOf(Keywords.kw_in, Keywords.kw_of, Keywords.kw_async,
- Keywords.kw_await, Keywords.kw_yield,
- Keywords.kw_finally, Keywords.kw_function,
- Keywords.kw_import, Keywords.kw_is,
- Keywords.kw_let, Keywords.kw_var,
+ !FormatTok->isOneOf(Keywords.kw_in, Keywords.kw_of, Keywords.kw_as,
+ Keywords.kw_async, Keywords.kw_await,
+ Keywords.kw_yield, Keywords.kw_finally,
+ Keywords.kw_function, Keywords.kw_import,
+ Keywords.kw_is, Keywords.kw_let, Keywords.kw_var,
Keywords.kw_abstract, Keywords.kw_extends,
Keywords.kw_implements, Keywords.kw_instanceof,
Keywords.kw_interface, Keywords.kw_throws));
Index: cfe/trunk/unittests/Format/FormatTestJS.cpp
===================================================================
--- cfe/trunk/unittests/Format/FormatTestJS.cpp
+++ cfe/trunk/unittests/Format/FormatTestJS.cpp
@@ -1010,6 +1010,9 @@
"} from 'some/module.js';");
verifyFormat("import {X, Y,} from 'some/module.js';");
verifyFormat("import {X as myLocalX, Y as myLocalY} from 'some/module.js';");
+ // Ensure Automatic Semicolon Insertion does not break on "as\n".
+ verifyFormat("import {X as myX} from 'm';", "import {X as\n"
+ " myX} from 'm';");
verifyFormat("import * as lib from 'some/module.js';");
verifyFormat("var x = {import: 1};\nx.import = 2;");
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20817.59227.patch
Type: text/x-patch
Size: 2782 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20160601/211f0edb/attachment.bin>
More information about the cfe-commits
mailing list