Patch 9.0.1426
Problem:    Indent wrong after "export namespace" in C++.
Solution:   Skip over "inline" and "export" in any order. (Virginia Senioria,
            closes #12134, closes #12133)
Files:      src/cindent.c, src/testdir/test_cindent.vim


*** ../vim-9.0.1425/src/cindent.c       2023-01-22 21:14:32.613863616 +0000
--- src/cindent.c       2023-03-24 19:24:04.260005272 +0000
***************
*** 769,775 ****
  
      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])))
--- 769,777 ----
  
      s = cin_skipcomment(s);
  
!     // skip over "inline" and "export" in any order
!     while ((STRNCMP(s, "inline", 6) == 0 || STRNCMP(s, "export", 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])))
*** ../vim-9.0.1425/src/testdir/test_cindent.vim        2022-05-21 
21:24:02.000000000 +0100
--- src/testdir/test_cindent.vim        2023-03-24 19:21:11.407760413 +0000
***************
*** 4406,4411 ****
--- 4406,4423 ----
    inline/* test */namespace {
      111111111111111111;
    }
+   export namespace {
+     111111111111111111;
+   }
+   export inline namespace {
+     111111111111111111;
+   }
+   export/* test */inline namespace {
+     111111111111111111;
+   }
+   inline export namespace {
+     111111111111111111;
+   }
  
    /* invalid namespaces use block indent */
    namespace test test2 {
***************
*** 4509,4514 ****
--- 4521,4538 ----
    inline/* test */namespace {
    111111111111111111;
    }
+   export namespace {
+   111111111111111111;
+   }
+   export inline namespace {
+   111111111111111111;
+   }
+   export/* test */inline namespace {
+   111111111111111111;
+   }
+   inline export namespace {
+   111111111111111111;
+   }
  
    /* invalid namespaces use block indent */
    namespace test test2 {
*** ../vim-9.0.1425/src/version.c       2023-03-23 15:45:42.808274880 +0000
--- src/version.c       2023-03-24 19:22:48.867902719 +0000
***************
*** 697,698 ****
--- 697,700 ----
  {   /* Add new patch number below this line */
+ /**/
+     1426,
  /**/

-- 
FATHER:    Did you kill all those guards?
LAUNCELOT: Yes ...  I'm very sorry ...
FATHER:    They cost fifty pounds each!
                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///                                                                      \\\
\\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20230324192613.257A91C0655%40moolenaar.net.

Raspunde prin e-mail lui