summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <bram@vim.org>2011-12-14 20:05:21 +0100
committerBram Moolenaar <bram@vim.org>2011-12-14 20:05:21 +0100
commitde19109d2c41449ab75c77de9224473d4305a38a (patch)
tree552df0b580eaa889681e9f8f60c2ffb487015119
parent5651f8d026ed332caf629d9fb2561c0668a9dc97 (diff)
downloadvim-de19109d2c41449ab75c77de9224473d4305a38a.tar.gz
updated for version 7.3.379v7.3.379v7-3-379
Problem: C-indenting wrong for static enum. Solution: Skip over "static". (Lech Lorens)
-rw-r--r--src/misc1.c3
-rw-r--r--src/testdir/test3.in19
-rw-r--r--src/testdir/test3.ok7
-rw-r--r--src/version.c2
4 files changed, 25 insertions, 6 deletions
diff --git a/src/misc1.c b/src/misc1.c
index 11a1f94f..65f56f4f 100644
--- a/src/misc1.c
+++ b/src/misc1.c
@@ -5138,6 +5138,9 @@ cin_isinit(void)
if (STRNCMP(s, "typedef", 7) == 0 && !vim_isIDc(s[7]))
s = cin_skipcomment(s + 7);
+ if (STRNCMP(s, "static", 6) == 0 && !vim_isIDc(s[6]))
+ s = cin_skipcomment(s + 6);
+
if (STRNCMP(s, "enum", 4) == 0 && !vim_isIDc(s[4]))
return TRUE;
diff --git a/src/testdir/test3.in b/src/testdir/test3.in
index d3911427..6c43732a 100644
--- a/src/testdir/test3.in
+++ b/src/testdir/test3.in
@@ -299,18 +299,25 @@ char *(array[100]) = {
enum soppie
{
- yes = 0,
- no,
- maybe
+yes = 0,
+no,
+maybe
};
typedef enum soppie
{
- yes = 0,
- no,
- maybe
+yes = 0,
+no,
+maybe
};
+static enum
+{
+yes = 0,
+no,
+maybe
+} soppie;
+
{
int a,
b;
diff --git a/src/testdir/test3.ok b/src/testdir/test3.ok
index 3c073664..ad1db853 100644
--- a/src/testdir/test3.ok
+++ b/src/testdir/test3.ok
@@ -299,6 +299,13 @@ typedef enum soppie
maybe
};
+static enum
+{
+ yes = 0,
+ no,
+ maybe
+} soppie;
+
{
int a,
b;
diff --git a/src/version.c b/src/version.c
index 16abb870..6f2f28c1 100644
--- a/src/version.c
+++ b/src/version.c
@@ -715,6 +715,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 379,
+/**/
378,
/**/
377,