146 lines
2.8 KiB
Plaintext
146 lines
2.8 KiB
Plaintext
To: vim_dev@googlegroups.com
|
|
Subject: Patch 7.4.893
|
|
Fcc: outbox
|
|
From: Bram Moolenaar <Bram@moolenaar.net>
|
|
Mime-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
------------
|
|
|
|
Patch 7.4.893
|
|
Problem: C indenting is wrong below a "case (foo):" because it is
|
|
recognized as a C++ base class construct. Issue #38.
|
|
Solution: Check for the case keyword.
|
|
Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
|
|
|
|
|
|
*** ../vim-7.4.892/src/misc1.c 2015-10-07 11:41:43.154141198 +0200
|
|
--- src/misc1.c 2015-10-13 16:03:35.727021051 +0200
|
|
***************
|
|
*** 6555,6561 ****
|
|
|
|
pos->lnum = lnum;
|
|
line = ml_get(lnum);
|
|
! s = cin_skipcomment(line);
|
|
for (;;)
|
|
{
|
|
if (*s == NUL)
|
|
--- 6555,6561 ----
|
|
|
|
pos->lnum = lnum;
|
|
line = ml_get(lnum);
|
|
! s = line;
|
|
for (;;)
|
|
{
|
|
if (*s == NUL)
|
|
***************
|
|
*** 6564,6569 ****
|
|
--- 6564,6576 ----
|
|
break;
|
|
/* Continue in the cursor line. */
|
|
line = ml_get(++lnum);
|
|
+ s = line;
|
|
+ }
|
|
+ if (s == line)
|
|
+ {
|
|
+ /* don't recognize "case (foo):" as a baseclass */
|
|
+ if (cin_iscase(s, FALSE))
|
|
+ break;
|
|
s = cin_skipcomment(line);
|
|
if (*s == NUL)
|
|
continue;
|
|
*** ../vim-7.4.892/src/testdir/test3.in 2015-10-07 11:41:43.158141156 +0200
|
|
--- src/testdir/test3.in 2015-10-13 16:06:13.781358279 +0200
|
|
***************
|
|
*** 932,937 ****
|
|
--- 932,964 ----
|
|
a = 1;
|
|
}
|
|
|
|
+ void func()
|
|
+ {
|
|
+ switch (foo)
|
|
+ {
|
|
+ case (bar):
|
|
+ if (baz())
|
|
+ quux();
|
|
+ break;
|
|
+ case (shmoo):
|
|
+ if (!bar)
|
|
+ {
|
|
+ }
|
|
+ case (foo1):
|
|
+ switch (bar)
|
|
+ {
|
|
+ case baz:
|
|
+ baz_f();
|
|
+ break;
|
|
+ }
|
|
+ break;
|
|
+ default:
|
|
+ baz();
|
|
+ baz();
|
|
+ break;
|
|
+ }
|
|
+ }
|
|
+
|
|
/* end of AUTO */
|
|
|
|
STARTTEST
|
|
*** ../vim-7.4.892/src/testdir/test3.ok 2015-10-07 11:41:43.158141156 +0200
|
|
--- src/testdir/test3.ok 2015-10-13 16:05:58.869515164 +0200
|
|
***************
|
|
*** 920,925 ****
|
|
--- 920,952 ----
|
|
a = 1;
|
|
}
|
|
|
|
+ void func()
|
|
+ {
|
|
+ switch (foo)
|
|
+ {
|
|
+ case (bar):
|
|
+ if (baz())
|
|
+ quux();
|
|
+ break;
|
|
+ case (shmoo):
|
|
+ if (!bar)
|
|
+ {
|
|
+ }
|
|
+ case (foo1):
|
|
+ switch (bar)
|
|
+ {
|
|
+ case baz:
|
|
+ baz_f();
|
|
+ break;
|
|
+ }
|
|
+ break;
|
|
+ default:
|
|
+ baz();
|
|
+ baz();
|
|
+ break;
|
|
+ }
|
|
+ }
|
|
+
|
|
/* end of AUTO */
|
|
|
|
|
|
*** ../vim-7.4.892/src/version.c 2015-10-13 13:49:04.068168461 +0200
|
|
--- src/version.c 2015-10-13 16:11:50.681813418 +0200
|
|
***************
|
|
*** 743,744 ****
|
|
--- 743,746 ----
|
|
{ /* Add new patch number below this line */
|
|
+ /**/
|
|
+ 893,
|
|
/**/
|
|
|
|
--
|
|
My sister Cecilia opened a computer store in Hawaii.
|
|
She sells C shells by the seashore.
|
|
|
|
/// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
|
|
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
|
|
\\\ an exciting new programming language -- http://www.Zimbu.org ///
|
|
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
|