X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Fgdb_wchar.h;h=092971ee7d90b98ee972426c34e68573454216df;hb=4b4477b52eee60ddadd59c36ffd778bbd9ab1c07;hp=4c1b795d8ad4ab53dd840e269d3a97e70d61dfa2;hpb=7b6bb8daaceb9ecf3f42dea57ae82733d6a3b2f6;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/gdb_wchar.h b/gdb/gdb_wchar.h index 4c1b795d8a..092971ee7d 100644 --- a/gdb/gdb_wchar.h +++ b/gdb/gdb_wchar.h @@ -1,5 +1,5 @@ /* Wide characters for gdb - Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 2009-2019 Free Software Foundation, Inc. This file is part of GDB. @@ -49,18 +49,18 @@ #define PHONY_ICONV #endif +#include +#include + /* We use "btowc" as a sentinel to detect functioning wchar_t support. We check for either __STDC_ISO_10646__ or a new-enough libiconv in order to ensure we can convert to and from wchar_t. We choose libiconv version 0x108 because it is the first version with iconvlist. */ -#if defined (HAVE_ICONV) && defined (HAVE_WCHAR_H) && defined (HAVE_BTOWC) \ +#if defined (HAVE_ICONV) && defined (HAVE_BTOWC) \ && (defined (__STDC_ISO_10646__) \ || (defined (_LIBICONV_VERSION) && _LIBICONV_VERSION >= 0x108)) -#include -#include - typedef wchar_t gdb_wchar_t; typedef wint_t gdb_wint_t; @@ -78,11 +78,10 @@ typedef wint_t gdb_wint_t; iconv_open. We put the endianness into the encoding name to avoid hosts that emit a BOM when the unadorned name is used. */ #if defined (__STDC_ISO_10646__) -#if WORDS_BIGENDIAN -#define INTERMEDIATE_ENCODING "UCS-4BE" -#else -#define INTERMEDIATE_ENCODING "UCS-4LE" -#endif +#define USE_INTERMEDIATE_ENCODING_FUNCTION +#define INTERMEDIATE_ENCODING intermediate_encoding () +const char *intermediate_encoding (void); + #elif defined (_LIBICONV_VERSION) && _LIBICONV_VERSION >= 0x108 #define INTERMEDIATE_ENCODING "wchar_t" #else @@ -95,7 +94,7 @@ typedef wint_t gdb_wint_t; /* If we got here and have wchar_t support, we might be on a system with some problem. So, we just disable everything. */ -#if defined (HAVE_WCHAR_H) && defined (HAVE_BTOWC) +#if defined (HAVE_BTOWC) #define PHONY_ICONV #endif