diff --git a/src/eval.c b/src/eval.c
index 508a26c..cb584f8 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -8141,8 +8141,8 @@
     {"getwinposx",	0, 0, f_getwinposx},
     {"getwinposy",	0, 0, f_getwinposy},
     {"getwinvar",	2, 3, f_getwinvar},
-    {"glob",		1, 3, f_glob},
-    {"globpath",	2, 4, f_globpath},
+    {"glob",		1, 4, f_glob},
+    {"globpath",	2, 5, f_globpath},
     {"has",		1, 1, f_has},
     {"has_key",		2, 2, f_has_key},
     {"haslocaldir",	0, 0, f_haslocaldir},
@@ -12412,11 +12412,16 @@
     {
 	if (get_tv_number_chk(&argvars[1], &error))
 	    options |= WILD_KEEP_ALL;
-	if (argvars[2].v_type != VAR_UNKNOWN
-				    && get_tv_number_chk(&argvars[2], &error))
+	if (argvars[2].v_type != VAR_UNKNOWN)
 	{
-	    rettv->v_type = VAR_LIST;
-	    rettv->vval.v_list = NULL;
+	    if (get_tv_number_chk(&argvars[2], &error))
+	    {
+		rettv->v_type = VAR_LIST;
+		rettv->vval.v_list = NULL;
+	    }
+	    if (argvars[3].v_type != VAR_UNKNOWN
+				    && get_tv_number_chk(&argvars[3], &error))
+		options |= WILD_ALLLINKS;
 	}
     }
     if (!error)
@@ -12466,11 +12471,16 @@
     {
 	if (get_tv_number_chk(&argvars[2], &error))
 	    flags |= WILD_KEEP_ALL;
-	if (argvars[3].v_type != VAR_UNKNOWN
-				    && get_tv_number_chk(&argvars[3], &error))
+	if (argvars[3].v_type != VAR_UNKNOWN)
 	{
-	    rettv->v_type = VAR_LIST;
-	    rettv->vval.v_list = NULL;
+	    if (get_tv_number_chk(&argvars[3], &error))
+	    {
+		rettv->v_type = VAR_LIST;
+		rettv->vval.v_list = NULL;
+	    }
+	    if (argvars[4].v_type != VAR_UNKNOWN
+				    && get_tv_number_chk(&argvars[4], &error))
+		flags |= WILD_ALLLINKS;
 	}
     }
     if (file != NULL && !error)
diff --git a/src/ex_getln.c b/src/ex_getln.c
index d8db15a..e18a8ed 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -4563,6 +4563,8 @@
 	flags |= EW_KEEPALL;
     if (options & WILD_SILENT)
 	flags |= EW_SILENT;
+    if (options & WILD_ALLLINKS)
+	flags |= EW_ALLLINKS;
 
     if (xp->xp_context == EXPAND_FILES
 	    || xp->xp_context == EXPAND_DIRECTORIES
diff --git a/src/version.c b/src/version.c
index b106503..a814baf 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    654,
+/**/
     653,
 /**/
     652,
diff --git a/src/vim.h b/src/vim.h
index 61cd5b9..825c844 100644
--- a/src/vim.h
+++ b/src/vim.h
@@ -814,15 +814,16 @@
 #define WILD_LONGEST		7
 #define WILD_ALL_KEEP		8
 
-#define WILD_LIST_NOTFOUND	1
-#define WILD_HOME_REPLACE	2
-#define WILD_USE_NL		4
-#define WILD_NO_BEEP		8
-#define WILD_ADD_SLASH		16
-#define WILD_KEEP_ALL		32
-#define WILD_SILENT		64
-#define WILD_ESCAPE		128
-#define WILD_ICASE		256
+#define WILD_LIST_NOTFOUND	0x01
+#define WILD_HOME_REPLACE	0x02
+#define WILD_USE_NL		0x04
+#define WILD_NO_BEEP		0x08
+#define WILD_ADD_SLASH		0x10
+#define WILD_KEEP_ALL		0x20
+#define WILD_SILENT		0x40
+#define WILD_ESCAPE		0x80
+#define WILD_ICASE		0x100
+#define WILD_ALLLINKS		0x200
 
 /* Flags for expand_wildcards() */
 #define EW_DIR		0x01	/* include directory names */
@@ -839,6 +840,7 @@
 #define EW_KEEPDOLLAR	0x800	/* do not escape $, $var is expanded */
 /* Note: mostly EW_NOTFOUND and EW_SILENT are mutually exclusive: EW_NOTFOUND
  * is used when executing commands and EW_SILENT for interactive expanding. */
+#define EW_ALLLINKS	0x1000	/* also links not pointing to existing file */
 
 /* Flags for find_file_*() functions. */
 #define FINDFILE_FILE	0	/* only files */
