patch 8.0.0174: executing "locale -a" on MS-Windows needlessly

Problem:    For completion "locale -a" is executed on MS-Windows, even though
            it most likely won't work.
Solution:   Skip executing "locale -a" on MS-Windows. (Ken Takata)
diff --git a/src/ex_cmds2.c b/src/ex_cmds2.c
index bee4670..7a6047a 100644
--- a/src/ex_cmds2.c
+++ b/src/ex_cmds2.c
@@ -5091,24 +5091,10 @@
 # if defined(FEAT_CMDL_COMPL) || defined(PROTO)
 
 static char_u	**locales = NULL;	/* Array of all available locales */
+
+#  ifndef WIN32
 static int	did_init_locales = FALSE;
 
-static void init_locales(void);
-static char_u **find_locales(void);
-
-/*
- * Lazy initialization of all available locales.
- */
-    static void
-init_locales(void)
-{
-    if (!did_init_locales)
-    {
-	did_init_locales = TRUE;
-	locales = find_locales();
-    }
-}
-
 /* Return an array of strings for all available locales + NULL for the
  * last element.  Return NULL in case of error. */
     static char_u **
@@ -5149,6 +5135,22 @@
     ((char_u **)locales_ga.ga_data)[locales_ga.ga_len] = NULL;
     return (char_u **)locales_ga.ga_data;
 }
+#  endif
+
+/*
+ * Lazy initialization of all available locales.
+ */
+    static void
+init_locales(void)
+{
+#  ifndef WIN32
+    if (!did_init_locales)
+    {
+	did_init_locales = TRUE;
+	locales = find_locales();
+    }
+#  endif
+}
 
 #  if defined(EXITFREE) || defined(PROTO)
     void