]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
patch 8.2.3876: 'cindent' does not recognize inline namespace v8.2.3876
authorzeertzjq <zeertzjq@outlook.com>
Wed, 22 Dec 2021 20:55:30 +0000 (20:55 +0000)
committerBram Moolenaar <Bram@vim.org>
Wed, 22 Dec 2021 20:55:30 +0000 (20:55 +0000)
Problem:    'cindent' does not recognize inline namespace.
Solution:   Skip over "inline" to find "namespace". (closes #9383)

src/cindent.c
src/testdir/test_cindent.vim
src/version.c

index 4fa165e699cfd54e83a672e4adfcc0e9c13aebd9..42b46e401617d84e701e44e0f038f137957adf82 100644 (file)
@@ -755,6 +755,10 @@ cin_is_cpp_namespace(char_u *s)
     int                has_name_start = FALSE;
 
     s = cin_skipcomment(s);
+
+    if (STRNCMP(s, "inline", 6) == 0 && (s[6] == NUL || !vim_iswordc(s[6])))
+       s = cin_skipcomment(skipwhite(s + 6));
+
     if (STRNCMP(s, "namespace", 9) == 0 && (s[9] == NUL || !vim_iswordc(s[9])))
     {
        p = cin_skipcomment(skipwhite(s + 9));
index c7ce2babe281f753ac844e6f17b1c25b5ea89259..d8ea4e772e2a30cc37a9f4b8cb8cd22cef963184 100644 (file)
@@ -996,6 +996,15 @@ func Test_cindent_1()
     22222222222222222;
   }
   }
+  inline namespace {
+    111111111111111111;
+  }
+  inline /* test */ namespace {
+    111111111111111111;
+  }
+  inline/* test */namespace {
+    111111111111111111;
+  }
 
   /* invalid namespaces use block indent */
   namespace test test2 {
@@ -1019,6 +1028,9 @@ func Test_cindent_1()
   {
     111111111111111111;
   }
+  inlinenamespace {
+    111111111111111111;
+  }
 
   void getstring() {
   /* Raw strings */
@@ -1961,6 +1973,15 @@ func Test_cindent_1()
                22222222222222222;
        }
   }
+  inline namespace {
+       111111111111111111;
+  }
+  inline /* test */ namespace {
+       111111111111111111;
+  }
+  inline/* test */namespace {
+       111111111111111111;
+  }
 
   /* invalid namespaces use block indent */
   namespace test test2 {
@@ -1984,6 +2005,9 @@ func Test_cindent_1()
   {
        111111111111111111;
   }
+  inlinenamespace {
+       111111111111111111;
+  }
 
   void getstring() {
        /* Raw strings */
@@ -4358,6 +4382,15 @@ func Test_cindent_47()
     22222222222222222;
   }
   }
+  inline namespace {
+    111111111111111111;
+  }
+  inline /* test */ namespace {
+    111111111111111111;
+  }
+  inline/* test */namespace {
+    111111111111111111;
+  }
 
   /* invalid namespaces use block indent */
   namespace test test2 {
@@ -4381,6 +4414,9 @@ func Test_cindent_47()
   {
     111111111111111111;
   }
+  inlinenamespace {
+    111111111111111111;
+  }
   NAMESPACEEND
   [CODE]
 
@@ -4449,6 +4485,15 @@ func Test_cindent_47()
   22222222222222222;
   }
   }
+  inline namespace {
+  111111111111111111;
+  }
+  inline /* test */ namespace {
+  111111111111111111;
+  }
+  inline/* test */namespace {
+  111111111111111111;
+  }
 
   /* invalid namespaces use block indent */
   namespace test test2 {
@@ -4472,6 +4517,9 @@ func Test_cindent_47()
   {
        111111111111111111;
   }
+  inlinenamespace {
+       111111111111111111;
+  }
   NAMESPACEEND
 
   [CODE]
index 87ec33c607fa08848e2d5b739c11ef8912450851..d97eb03f8d6190b0363480c5aa8283b623ede82d 100644 (file)
@@ -749,6 +749,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    3876,
 /**/
     3875,
 /**/