int len,
int locally,
int thisblock,
- int searchflags) /* flags passed to searchit() */
+ int flags_arg) /* flags passed to searchit() */
{
char_u *pat;
pos_T old_pos;
int save_p_scs;
int retval = OK;
int incll;
+ int searchflags = flags_arg;
if ((pat = alloc(len + 7)) == NULL)
return FAIL;
/* For finding a local variable and the match is before the "{" search
* to find a later match. For K&R style function declarations this
- * skips the function header without types. */
+ * skips the function header without types. Remove SEARCH_START from
+ * flags to avoid getting stuck at one position. */
found_pos = curwin->w_cursor;
+ searchflags &= ~SEARCH_START;
}
if (t == FAIL)
" Test commands that jump somewhere.
-func Test_geedee()
+func Test_geeDEE()
new
call setline(1, ["Filename x;", "", "int Filename", "int func() {", "Filename y;"])
/y;/
call assert_equal(1, line('.'))
quit!
endfunc
+
+func Test_gee_dee()
+ new
+ call setline(1, ["int x;", "", "int func(int x)", "{", " return x;", "}"])
+ /return/
+ normal $hgd
+ call assert_equal(3, line('.'))
+ call assert_equal(14, col('.'))
+ quit!
+endfunc
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 1940,
/**/
1939,
/**/