To: vim_dev@googlegroups.com Subject: Patch 9.0.1426 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ 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 -- Bram@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 ///