1
0
mirror of https://github.com/postgres/postgres.git synced 2025-06-07 11:02:12 +03:00

Fix function-defined-but-not-used warning.

Buildfarm member jacana (MinGW) has been complaining that
get_iso_localename is defined but not used.  This is evidently
fallout from the recent removal of VS2013 support in pg_locale.c.
Rearrange the #ifs so that get_iso_localename and its subroutine
search_locale_enum won't get built on MinGW.

I also noticed that a comment in get_iso_localename cross-
referenced a comment in IsoLocaleName that isn't there anymore.
Put back what I think is the referenced material.
This commit is contained in:
Tom Lane 2022-08-06 13:32:29 -04:00
parent 692df425b6
commit 5c7121bcf8

@ -118,7 +118,7 @@ static HTAB *collation_cache = NULL;
#if defined(WIN32) && defined(LC_MESSAGES) #if defined(WIN32) && defined(LC_MESSAGES)
static char *IsoLocaleName(const char *); /* MSVC specific */ static char *IsoLocaleName(const char *);
#endif #endif
#ifdef USE_ICU #ifdef USE_ICU
@ -950,6 +950,8 @@ cache_locale_time(void)
* [2] https://docs.microsoft.com/en-us/windows/win32/intl/locale-names * [2] https://docs.microsoft.com/en-us/windows/win32/intl/locale-names
*/ */
#if defined(_MSC_VER)
/* /*
* Callback function for EnumSystemLocalesEx() in get_iso_localename(). * Callback function for EnumSystemLocalesEx() in get_iso_localename().
* *
@ -1088,8 +1090,11 @@ get_iso_localename(const char *winlocname)
return NULL; return NULL;
/* /*
* Simply replace the hyphen with an underscore. See comments in * Since the message catalogs sit on a case-insensitive filesystem, we
* IsoLocaleName. * need not standardize letter case here. So long as we do not ship
* message catalogs for which it would matter, we also need not
* translate the script/variant portion, e.g. uz-Cyrl-UZ to
* uz_UZ@cyrillic. Simply replace the hyphen with an underscore.
*/ */
hyphen = strchr(iso_lc_messages, '-'); hyphen = strchr(iso_lc_messages, '-');
if (hyphen) if (hyphen)
@ -1103,7 +1108,6 @@ get_iso_localename(const char *winlocname)
static char * static char *
IsoLocaleName(const char *winlocname) IsoLocaleName(const char *winlocname)
{ {
#if defined(_MSC_VER)
static char iso_lc_messages[LOCALE_NAME_MAX_LENGTH]; static char iso_lc_messages[LOCALE_NAME_MAX_LENGTH];
if (pg_strcasecmp("c", winlocname) == 0 || if (pg_strcasecmp("c", winlocname) == 0 ||
@ -1114,10 +1118,18 @@ IsoLocaleName(const char *winlocname)
} }
else else
return get_iso_localename(winlocname); return get_iso_localename(winlocname);
}
#else /* !defined(_MSC_VER) */
static char *
IsoLocaleName(const char *winlocname)
{
return NULL; /* Not supported on MinGW */
}
#endif /* defined(_MSC_VER) */ #endif /* defined(_MSC_VER) */
return NULL; /* Not supported on this version of msvc/mingw */
}
#endif /* WIN32 && LC_MESSAGES */ #endif /* WIN32 && LC_MESSAGES */