[cfe-commits] r171266 - in /cfe/trunk: lib/Format/UnwrappedLineParser.cpp unittests/Format/FormatTest.cpp
Dmitri Gribenko
gribozavr at gmail.com
Sun Dec 30 13:27:25 PST 2012
Author: gribozavr
Date: Sun Dec 30 15:27:25 2012
New Revision: 171266
URL: http://llvm.org/viewvc/llvm-project?rev=171266&view=rev
Log:
Formatter: parse and format inline namespaces like regular namespaces
This changes formatting from:
inline namespace X {
class A {
};
}
to:
inline namespace X {
class A {
};
}
Modified:
cfe/trunk/lib/Format/UnwrappedLineParser.cpp
cfe/trunk/unittests/Format/FormatTest.cpp
Modified: cfe/trunk/lib/Format/UnwrappedLineParser.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Format/UnwrappedLineParser.cpp?rev=171266&r1=171265&r2=171266&view=diff
==============================================================================
--- cfe/trunk/lib/Format/UnwrappedLineParser.cpp (original)
+++ cfe/trunk/lib/Format/UnwrappedLineParser.cpp Sun Dec 30 15:27:25 2012
@@ -100,10 +100,19 @@
void UnwrappedLineParser::parseStatement() {
parseComments();
+ int TokenNumber = 0;
switch (FormatTok.Tok.getKind()) {
case tok::kw_namespace:
parseNamespace();
return;
+ case tok::kw_inline:
+ nextToken();
+ TokenNumber++;
+ if (FormatTok.Tok.is(tok::kw_namespace)) {
+ parseNamespace();
+ return;
+ }
+ break;
case tok::kw_public:
case tok::kw_protected:
case tok::kw_private:
@@ -132,7 +141,6 @@
default:
break;
}
- int TokenNumber = 0;
do {
++TokenNumber;
switch (FormatTok.Tok.getKind()) {
Modified: cfe/trunk/unittests/Format/FormatTest.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/Format/FormatTest.cpp?rev=171266&r1=171265&r2=171266&view=diff
==============================================================================
--- cfe/trunk/unittests/Format/FormatTest.cpp (original)
+++ cfe/trunk/unittests/Format/FormatTest.cpp Sun Dec 30 15:27:25 2012
@@ -349,6 +349,13 @@
" f();\n"
"}\n"
"}");
+ verifyFormat("inline namespace X {\n"
+ "class A {\n"
+ "};\n"
+ "void f() {\n"
+ " f();\n"
+ "}\n"
+ "}");
verifyFormat("using namespace some_namespace;\n"
"class A {\n"
"};\n"
More information about the cfe-commits
mailing list