summaryrefslogtreecommitdiff
path: root/bfd/bfdio.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2022-12-20 18:01:07 +1030
committerAlan Modra <amodra@gmail.com>2022-12-20 19:01:10 +1030
commit9d0991449285833b9a77cc02850a1e113e460362 (patch)
treee5047d50379eb53c84a593c91acc8a85f5cde6fd /bfd/bfdio.c
parentb3737aadf1b6e11e37f8584c4feef73fd5c399ba (diff)
downloadbinutils-gdb-9d0991449285833b9a77cc02850a1e113e460362.tar.gz
PR29915, bfdio.c does not compile with mingw.org's MinGW
PR 29915 * configure.ac: Add AC_CHECK_DECLS test ___lc_codepage_func. * configure: Regenerate. * config.in: Regenerate. * bfdio.c (___lc_codepage_func): Move declaration to.. (_bfd_real_fopen): ..here, and use !HAVE_DECL____LC_CODEPAGE_FUNC.
Diffstat (limited to 'bfd/bfdio.c')
-rw-r--r--bfd/bfdio.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/bfd/bfdio.c b/bfd/bfdio.c
index 571f12b625a..a67d4bbbeb7 100644
--- a/bfd/bfdio.c
+++ b/bfd/bfdio.c
@@ -31,11 +31,6 @@
#include <locale.h>
#endif
-#if defined(__MINGW64_VERSION_MAJOR) && __MINGW64_VERSION_MAJOR < 9
-/* This prototype was added to locale.h in version 9.0 of MinGW-w64. */
-_CRTIMP unsigned int __cdecl ___lc_codepage_func(void);
-#endif
-
#ifndef S_IXUSR
#define S_IXUSR 0100 /* Execute by owner. */
#endif
@@ -127,7 +122,11 @@ _bfd_real_fopen (const char *filename, const char *modes)
const wchar_t prefix[] = L"\\\\?\\";
const size_t partPathLen = strlen (filename) + 1;
#ifdef __MINGW32__
- const unsigned int cp = ___lc_codepage_func();
+#if !HAVE_DECL____LC_CODEPAGE_FUNC
+/* This prototype was added to locale.h in version 9.0 of MinGW-w64. */
+ _CRTIMP unsigned int __cdecl ___lc_codepage_func (void);
+#endif
+ const unsigned int cp = ___lc_codepage_func ();
#else
const unsigned int cp = CP_UTF8;
#endif