Fix compiler warnings around _CRT_glob

Newer compilers warned about

    extern int _CRT_glob = 0;

which is indeed a mysterious C construction, as it combines "extern"
and an initialization.  It turns out that according to the C standard,
the "extern" is ignored here, so we can remove it to resolve the
warnings.  But then we also need to add a real extern
declaration (without initializer) to satisfy
-Wmissing-variable-declarations.

(Note that this code is only active on MinGW.)

Discussion: https://www.postgresql.org/message-id/1053279b-da01-4eb4-b7a3-da6b5d8f73d1%40eisentraut.org
pull/244/head
Peter Eisentraut 3 months ago
parent 3a66158068
commit 3e908fb54f
  1. 3
      src/common/exec.c

@ -46,7 +46,8 @@
/* Inhibit mingw CRT's auto-globbing of command line arguments */
#if defined(WIN32) && !defined(_MSC_VER)
extern int _CRT_glob = 0; /* 0 turns off globbing; 1 turns it on */
extern int _CRT_glob;
int _CRT_glob = 0; /* 0 turns off globbing; 1 turns it on */
#endif
/*

Loading…
Cancel
Save