patch 8.0.0423: changing 'cinoptions' does not always work
Problem: The effect of adding "#" to 'cinoptions' is not always removed.
(David Briscoe)
Solution: Reset b_ind_hash_comment. (Christian Brabandt, closes #1475)
diff --git a/src/testdir/Make_all.mak b/src/testdir/Make_all.mak
index e1ce151..b7fb15c 100644
--- a/src/testdir/Make_all.mak
+++ b/src/testdir/Make_all.mak
@@ -143,6 +143,7 @@
test_cdo.res \
test_channel.res \
test_charsearch.res \
+ test_cindent.res \
test_cmdline.res \
test_command_count.res \
test_crypt.res \
diff --git a/src/testdir/test3.in b/src/testdir/test3.in
index e8648d3..9e66436 100644
--- a/src/testdir/test3.in
+++ b/src/testdir/test3.in
Binary files differ
diff --git a/src/testdir/test_cindent.vim b/src/testdir/test_cindent.vim
new file mode 100644
index 0000000..5685c2b
--- /dev/null
+++ b/src/testdir/test_cindent.vim
@@ -0,0 +1,16 @@
+" Test for cinoptions and cindent
+"
+" TODO: rewrite test3.in into this new style test
+
+func Test_cino_hash()
+ " Test that curbuf->b_ind_hash_comment is correctly reset
+ new
+ setlocal cindent cinoptions=#1
+ setlocal cinoptions=
+ call setline(1, ["#include <iostream>"])
+ call cursor(1, 1)
+ norm! o#include
+ "call feedkeys("o#include\<esc>", 't')
+ call assert_equal(["#include <iostream>", "#include"], getline(1,2))
+ bwipe!
+endfunc