updated for version 7.3.871
Problem:    search('^$', 'c') does not use the empty match under the cursor.
Solution:   Special handling of the 'c' flag. (Christian Brabandt)
            Add tests.
diff --git a/src/testdir/test14.in b/src/testdir/test14.in
index 05c8025..b6f2f57 100644
--- a/src/testdir/test14.in
+++ b/src/testdir/test14.in
@@ -2,6 +2,7 @@
 Also test ":s/pat/sub/" with different ~s in sub.
 Also test for ^Vxff and ^Vo123 in Insert mode.
 Also test "[m", "]m", "[M" and "]M"
+Also test search()
 
 STARTTEST
 :so small.vim
@@ -34,6 +35,16 @@
 2[MaJ:.w >>test.out
 k[MaK:.w >>test.out
 3[MaL:.w >>test.out
+:"
+/^foobar
+:let startline = line('.')
+:call search('foobar', 'c')
+:call append(line('$'), line('.') - startline)
+j:call search('^$', 'c')
+:call append(line('$'), line('.') - startline)
+:call search('^$', 'bc')
+:call append(line('$'), line('.') - startline)
+:/^search()/,$w >>test.out
 :qa!
 ENDTEST
 
@@ -64,3 +75,8 @@
 		}
 	} e3
 }
+
+foobar
+
+
+search()