]> granicus.if.org Git - clang/commitdiff
format: Handle #import as include directive too.
authorNico Weber <nicolasweber@gmx.de>
Fri, 21 Dec 2012 18:21:56 +0000 (18:21 +0000)
committerNico Weber <nicolasweber@gmx.de>
Fri, 21 Dec 2012 18:21:56 +0000 (18:21 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170914 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Format/Format.cpp
unittests/Format/FormatTest.cpp

index b5e4a7003d2094ff62698ac535c3fedde30feb9e..bb18e9a85151aa863b9522722f0d1bd9d250258b 100644 (file)
@@ -579,6 +579,7 @@ public:
         return;
       switch (Tokens[Index].Tok.getIdentifierInfo()->getPPKeywordID()) {
       case tok::pp_include:
+      case tok::pp_import:
         parseIncludeDirective();
         break;
       default:
index a08f7c6cf717709980c9afc1bb3cc52103158bfd..b33206b404e734aab103f6e199506edd48c10d23 100644 (file)
@@ -617,6 +617,12 @@ TEST_F(FormatTest, HandlesIncludeDirectives) {
   EXPECT_EQ("#include \"a/b/string\"\n", format("#include \"a/b/string\"\n"));
   EXPECT_EQ("#include \"string.h\"\n", format("#include \"string.h\"\n"));
   EXPECT_EQ("#include \"string.h\"\n", format("#include \"string.h\"\n"));
+
+  EXPECT_EQ("#import <string>\n", format("#import <string>\n"));
+  EXPECT_EQ("#import <a/b/c.h>\n", format("#import <a/b/c.h>\n"));
+  EXPECT_EQ("#import \"a/b/string\"\n", format("#import \"a/b/string\"\n"));
+  EXPECT_EQ("#import \"string.h\"\n", format("#import \"string.h\"\n"));
+  EXPECT_EQ("#import \"string.h\"\n", format("#import \"string.h\"\n"));
 }