aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/nvim/indent_c.c5
-rw-r--r--src/nvim/testdir/test_cindent.vim48
2 files changed, 53 insertions, 0 deletions
diff --git a/src/nvim/indent_c.c b/src/nvim/indent_c.c
index 8780d3253d..eb1aa81e47 100644
--- a/src/nvim/indent_c.c
+++ b/src/nvim/indent_c.c
@@ -541,6 +541,11 @@ static bool cin_is_cpp_namespace(char_u *s)
bool 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));
while (*p != NUL) {
diff --git a/src/nvim/testdir/test_cindent.vim b/src/nvim/testdir/test_cindent.vim
index e8f448f96b..6554d034d3 100644
--- a/src/nvim/testdir/test_cindent.vim
+++ b/src/nvim/testdir/test_cindent.vim
@@ -997,6 +997,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 {
@@ -1020,6 +1029,9 @@ func Test_cindent_1()
{
111111111111111111;
}
+ inlinenamespace {
+ 111111111111111111;
+ }
void getstring() {
/* Raw strings */
@@ -1962,6 +1974,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 {
@@ -1985,6 +2006,9 @@ func Test_cindent_1()
{
111111111111111111;
}
+ inlinenamespace {
+ 111111111111111111;
+ }
void getstring() {
/* Raw strings */
@@ -4359,6 +4383,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 {
@@ -4382,6 +4415,9 @@ func Test_cindent_47()
{
111111111111111111;
}
+ inlinenamespace {
+ 111111111111111111;
+ }
NAMESPACEEND
[CODE]
@@ -4450,6 +4486,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 {
@@ -4473,6 +4518,9 @@ func Test_cindent_47()
{
111111111111111111;
}
+ inlinenamespace {
+ 111111111111111111;
+ }
NAMESPACEEND
[CODE]