On Tue, 10 Sept 2024 at 05:10, Jason Merrill wrote:
>
> Tested x86_64-pc-linux-gnu, OK for trunk?

I'm going to have to do some digging ... I _think_ there's some
obscure reason for this. Maybe a weird bootstrap situation. Or maybe I
made that up as rationale for a scripting error.


>
> -- 8< --
>
> Ever since the c_global and c_compatibility directories were added in
> r122533, the include guards have been oddly late in the files, with no
> comment about why that might be either in the commit message or the files
> themselves.  I don't see any justification for this; it seems like a
> scripting error in creating these files based on the ones in include/c.
>
> libstdc++-v3/ChangeLog:
>
>         * include/c_compatibility/ctype.h
>         * include/c_compatibility/errno.h
>         * include/c_compatibility/float.h
>         * include/c_compatibility/iso646.h
>         * include/c_compatibility/limits.h
>         * include/c_compatibility/locale.h
>         * include/c_compatibility/setjmp.h
>         * include/c_compatibility/signal.h
>         * include/c_compatibility/stdarg.h
>         * include/c_compatibility/stdbool.h
>         * include/c_compatibility/stddef.h
>         * include/c_compatibility/stdio.h
>         * include/c_compatibility/string.h
>         * include/c_compatibility/tgmath.h
>         * include/c_compatibility/time.h
>         * include/c_compatibility/uchar.h
>         * include/c_compatibility/wchar.h
>         * include/c_compatibility/wctype.h
>         * include/c_global/cctype
>         * include/c_global/cerrno
>         * include/c_global/cfloat
>         * include/c_global/climits
>         * include/c_global/clocale
>         * include/c_global/cmath
>         * include/c_global/csetjmp
>         * include/c_global/csignal
>         * include/c_global/cstdarg
>         * include/c_global/cstdio
>         * include/c_global/cstdlib
>         * include/c_global/cstring
>         * include/c_global/ctime
>         * include/c_global/cwchar
>         * include/c_global/cwctype: Move header guard before #includes.
> ---
>  libstdc++-v3/include/c_compatibility/ctype.h   | 4 ++--
>  libstdc++-v3/include/c_compatibility/errno.h   | 4 ++--
>  libstdc++-v3/include/c_compatibility/float.h   | 4 ++--
>  libstdc++-v3/include/c_compatibility/iso646.h  | 4 ++--
>  libstdc++-v3/include/c_compatibility/limits.h  | 4 ++--
>  libstdc++-v3/include/c_compatibility/locale.h  | 4 ++--
>  libstdc++-v3/include/c_compatibility/setjmp.h  | 4 ++--
>  libstdc++-v3/include/c_compatibility/signal.h  | 4 ++--
>  libstdc++-v3/include/c_compatibility/stdarg.h  | 4 ++--
>  libstdc++-v3/include/c_compatibility/stdbool.h | 6 +++---
>  libstdc++-v3/include/c_compatibility/stddef.h  | 4 ++--
>  libstdc++-v3/include/c_compatibility/stdio.h   | 4 ++--
>  libstdc++-v3/include/c_compatibility/string.h  | 4 ++--
>  libstdc++-v3/include/c_compatibility/tgmath.h  | 6 +++---
>  libstdc++-v3/include/c_compatibility/time.h    | 4 ++--
>  libstdc++-v3/include/c_compatibility/uchar.h   | 4 ++--
>  libstdc++-v3/include/c_compatibility/wchar.h   | 4 ++--
>  libstdc++-v3/include/c_compatibility/wctype.h  | 4 ++--
>  libstdc++-v3/include/c_global/cctype           | 6 +++---
>  libstdc++-v3/include/c_global/cerrno           | 6 +++---
>  libstdc++-v3/include/c_global/cfloat           | 6 +++---
>  libstdc++-v3/include/c_global/climits          | 6 +++---
>  libstdc++-v3/include/c_global/clocale          | 6 +++---
>  libstdc++-v3/include/c_global/cmath            | 6 +++---
>  libstdc++-v3/include/c_global/csetjmp          | 6 +++---
>  libstdc++-v3/include/c_global/csignal          | 6 +++---
>  libstdc++-v3/include/c_global/cstdarg          | 6 +++---
>  libstdc++-v3/include/c_global/cstdio           | 6 +++---
>  libstdc++-v3/include/c_global/cstdlib          | 6 +++---
>  libstdc++-v3/include/c_global/cstring          | 6 +++---
>  libstdc++-v3/include/c_global/ctime            | 6 +++---
>  libstdc++-v3/include/c_global/cwchar           | 6 +++---
>  libstdc++-v3/include/c_global/cwctype          | 6 +++---
>  33 files changed, 83 insertions(+), 83 deletions(-)
>
> diff --git a/libstdc++-v3/include/c_compatibility/ctype.h 
> b/libstdc++-v3/include/c_compatibility/ctype.h
> index 7b57a4d118a..d975dff1529 100644
> --- a/libstdc++-v3/include/c_compatibility/ctype.h
> +++ b/libstdc++-v3/include/c_compatibility/ctype.h
> @@ -26,11 +26,11 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <cctype>
> -
>  #ifndef _GLIBCXX_CTYPE_H
>  #define _GLIBCXX_CTYPE_H 1
>
> +#include <cctype>
> +
>  #ifdef _GLIBCXX_NAMESPACE_C
>  using std::isalnum;
>  using std::isalpha;
> diff --git a/libstdc++-v3/include/c_compatibility/errno.h 
> b/libstdc++-v3/include/c_compatibility/errno.h
> index 06a7e5e1ee4..402810456a5 100644
> --- a/libstdc++-v3/include/c_compatibility/errno.h
> +++ b/libstdc++-v3/include/c_compatibility/errno.h
> @@ -26,9 +26,9 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <cerrno>
> -
>  #ifndef _GLIBCXX_ERRNO_H
>  #define _GLIBCXX_ERRNO_H 1
>
> +#include <cerrno>
> +
>  #endif
> diff --git a/libstdc++-v3/include/c_compatibility/float.h 
> b/libstdc++-v3/include/c_compatibility/float.h
> index 9d8f4b62276..3d3c994db51 100644
> --- a/libstdc++-v3/include/c_compatibility/float.h
> +++ b/libstdc++-v3/include/c_compatibility/float.h
> @@ -26,9 +26,9 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <cfloat>
> -
>  #ifndef _GLIBCXX_FLOAT_H
>  #define _GLIBCXX_FLOAT_H 1
>
> +#include <cfloat>
> +
>  #endif
> diff --git a/libstdc++-v3/include/c_compatibility/iso646.h 
> b/libstdc++-v3/include/c_compatibility/iso646.h
> index cf95847a857..665166c7f03 100644
> --- a/libstdc++-v3/include/c_compatibility/iso646.h
> +++ b/libstdc++-v3/include/c_compatibility/iso646.h
> @@ -26,9 +26,9 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <ciso646>
> -
>  #ifndef _GLIBCXX_ISO646_H
>  #define _GLIBCXX_ISO646_H 1
>
> +#include <ciso646>
> +
>  #endif
> diff --git a/libstdc++-v3/include/c_compatibility/limits.h 
> b/libstdc++-v3/include/c_compatibility/limits.h
> index 3c3cbd58eb1..465ad4f7d52 100644
> --- a/libstdc++-v3/include/c_compatibility/limits.h
> +++ b/libstdc++-v3/include/c_compatibility/limits.h
> @@ -26,9 +26,9 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <climits>
> -
>  #ifndef _GLIBCXX_LIMITS_H
>  #define _GLIBCXX_LIMITS_H 1
>
> +#include <climits>
> +
>  #endif
> diff --git a/libstdc++-v3/include/c_compatibility/locale.h 
> b/libstdc++-v3/include/c_compatibility/locale.h
> index 91cf5e351aa..c7407ab5444 100644
> --- a/libstdc++-v3/include/c_compatibility/locale.h
> +++ b/libstdc++-v3/include/c_compatibility/locale.h
> @@ -26,11 +26,11 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <clocale>
> -
>  #ifndef _GLIBCXX_LOCALE_H
>  #define _GLIBCXX_LOCALE_H 1
>
> +#include <clocale>
> +
>  #ifdef _GLIBCXX_NAMESPACE_C
>  using std::lconv;
>  using std::setlocale;
> diff --git a/libstdc++-v3/include/c_compatibility/setjmp.h 
> b/libstdc++-v3/include/c_compatibility/setjmp.h
> index 4ffc9e60b90..7cf1e59bb8b 100644
> --- a/libstdc++-v3/include/c_compatibility/setjmp.h
> +++ b/libstdc++-v3/include/c_compatibility/setjmp.h
> @@ -26,11 +26,11 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <csetjmp>
> -
>  #ifndef _GLIBCXX_SETJMP_H
>  #define _GLIBCXX_SETJMP_H 1
>
> +#include <csetjmp>
> +
>  #ifdef _GLIBCXX_NAMESPACE_C
>  using std::jmp_buf;
>  using std::longjmp;
> diff --git a/libstdc++-v3/include/c_compatibility/signal.h 
> b/libstdc++-v3/include/c_compatibility/signal.h
> index e4d4fb2906b..9497985edb3 100644
> --- a/libstdc++-v3/include/c_compatibility/signal.h
> +++ b/libstdc++-v3/include/c_compatibility/signal.h
> @@ -26,11 +26,11 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <csignal>
> -
>  #ifndef _GLIBCXX_SIGNAL_H
>  #define _GLIBCXX_SIGNAL_H 1
>
> +#include <csignal>
> +
>  #ifdef _GLIBCXX_NAMESPACE_C
>  using std::sig_atomic_t;
>  using std::raise;
> diff --git a/libstdc++-v3/include/c_compatibility/stdarg.h 
> b/libstdc++-v3/include/c_compatibility/stdarg.h
> index 39033559cdb..b93037ef155 100644
> --- a/libstdc++-v3/include/c_compatibility/stdarg.h
> +++ b/libstdc++-v3/include/c_compatibility/stdarg.h
> @@ -26,11 +26,11 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <cstdarg>
> -
>  #ifndef _GLIBCXX_STDARG_H
>  #define _GLIBCXX_STDARG_H 1
>
> +#include <cstdarg>
> +
>  #ifdef _GLIBCXX_NAMESPACE_C
>  using std::va_list;
>  #endif
> diff --git a/libstdc++-v3/include/c_compatibility/stdbool.h 
> b/libstdc++-v3/include/c_compatibility/stdbool.h
> index 0ddf19a4884..1c7e70bad9a 100644
> --- a/libstdc++-v3/include/c_compatibility/stdbool.h
> +++ b/libstdc++-v3/include/c_compatibility/stdbool.h
> @@ -26,6 +26,9 @@
>   *  This is a Standard C++ Library header.
>   */
>
> +#ifndef _GLIBCXX_STDBOOL_H
> +#define _GLIBCXX_STDBOOL_H 1
> +
>  #include <bits/c++config.h>
>
>  #if __cplusplus >= 201103L
> @@ -36,7 +39,4 @@
>  # endif
>  #endif
>
> -#ifndef _GLIBCXX_STDBOOL_H
> -#define _GLIBCXX_STDBOOL_H 1
> -
>  #endif
> diff --git a/libstdc++-v3/include/c_compatibility/stddef.h 
> b/libstdc++-v3/include/c_compatibility/stddef.h
> index e7478d2a919..ba4aaaea96e 100644
> --- a/libstdc++-v3/include/c_compatibility/stddef.h
> +++ b/libstdc++-v3/include/c_compatibility/stddef.h
> @@ -26,11 +26,11 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <cstddef>
> -
>  #ifndef _GLIBCXX_STDDEF_H
>  #define _GLIBCXX_STDDEF_H 1
>
> +#include <cstddef>
> +
>  #ifdef _GLIBCXX_NAMESPACE_C
>  using std::size_t;
>  using std::ptrdiff_t;
> diff --git a/libstdc++-v3/include/c_compatibility/stdio.h 
> b/libstdc++-v3/include/c_compatibility/stdio.h
> index 2980b143a8e..573ada2f148 100644
> --- a/libstdc++-v3/include/c_compatibility/stdio.h
> +++ b/libstdc++-v3/include/c_compatibility/stdio.h
> @@ -26,11 +26,11 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <cstdio>
> -
>  #ifndef _GLIBCXX_STDIO_H
>  #define _GLIBCXX_STDIO_H 1
>
> +#include <cstdio>
> +
>  #ifdef _GLIBCXX_NAMESPACE_C
>  using std::FILE;
>  using std::fpos_t;
> diff --git a/libstdc++-v3/include/c_compatibility/string.h 
> b/libstdc++-v3/include/c_compatibility/string.h
> index 0939f092424..5cb354b09f9 100644
> --- a/libstdc++-v3/include/c_compatibility/string.h
> +++ b/libstdc++-v3/include/c_compatibility/string.h
> @@ -26,11 +26,11 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <cstring>
> -
>  #ifndef _GLIBCXX_STRING_H
>  #define _GLIBCXX_STRING_H 1
>
> +#include <cstring>
> +
>  #ifdef _GLIBCXX_NAMESPACE_C
>  using std::memcpy;
>  using std::memmove;
> diff --git a/libstdc++-v3/include/c_compatibility/tgmath.h 
> b/libstdc++-v3/include/c_compatibility/tgmath.h
> index e3c264843e3..aadddd91b60 100644
> --- a/libstdc++-v3/include/c_compatibility/tgmath.h
> +++ b/libstdc++-v3/include/c_compatibility/tgmath.h
> @@ -26,6 +26,9 @@
>   *  This is a Standard C++ Library header.
>   */
>
> +#ifndef _GLIBCXX_TGMATH_H
> +#define _GLIBCXX_TGMATH_H 1
> +
>  #include <bits/c++config.h>
>
>  #if __cplusplus >= 201103L
> @@ -36,7 +39,4 @@
>  # endif
>  #endif
>
> -#ifndef _GLIBCXX_TGMATH_H
> -#define _GLIBCXX_TGMATH_H 1
> -
>  #endif
> diff --git a/libstdc++-v3/include/c_compatibility/time.h 
> b/libstdc++-v3/include/c_compatibility/time.h
> index 4b2efab6ec7..a7afa626293 100644
> --- a/libstdc++-v3/include/c_compatibility/time.h
> +++ b/libstdc++-v3/include/c_compatibility/time.h
> @@ -26,11 +26,11 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <ctime>
> -
>  #ifndef _GLIBCXX_TIME_H
>  #define _GLIBCXX_TIME_H 1
>
> +#include <ctime>
> +
>  #ifdef _GLIBCXX_NAMESPACE_C
>  // Get rid of those macros defined in <time.h> in lieu of real functions.
>  #undef clock
> diff --git a/libstdc++-v3/include/c_compatibility/uchar.h 
> b/libstdc++-v3/include/c_compatibility/uchar.h
> index b3bbc901473..776380d3a5e 100644
> --- a/libstdc++-v3/include/c_compatibility/uchar.h
> +++ b/libstdc++-v3/include/c_compatibility/uchar.h
> @@ -26,11 +26,11 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <cuchar>
> -
>  #ifndef _GLIBCXX_UCHAR_H
>  #define _GLIBCXX_UCHAR_H 1
>
> +#include <cuchar>
> +
>  #ifdef _GLIBCXX_NAMESPACE_C
>
>  #if (_GLIBCXX_USE_CHAR8_T \
> diff --git a/libstdc++-v3/include/c_compatibility/wchar.h 
> b/libstdc++-v3/include/c_compatibility/wchar.h
> index 8dab7cb80a7..c618b1779c6 100644
> --- a/libstdc++-v3/include/c_compatibility/wchar.h
> +++ b/libstdc++-v3/include/c_compatibility/wchar.h
> @@ -26,11 +26,11 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <cwchar>
> -
>  #ifndef _GLIBCXX_WCHAR_H
>  #define _GLIBCXX_WCHAR_H 1
>
> +#include <cwchar>
> +
>  #ifdef _GLIBCXX_NAMESPACE_C
>  using std::mbstate_t;
>
> diff --git a/libstdc++-v3/include/c_compatibility/wctype.h 
> b/libstdc++-v3/include/c_compatibility/wctype.h
> index d0b24880c7f..834639d763b 100644
> --- a/libstdc++-v3/include/c_compatibility/wctype.h
> +++ b/libstdc++-v3/include/c_compatibility/wctype.h
> @@ -26,11 +26,11 @@
>   *  This is a Standard C++ Library header.
>   */
>
> -#include <cwctype>
> -
>  #ifndef _GLIBCXX_CWCTYPE_H
>  #define _GLIBCXX_CWCTYPE_H 1
>
> +#include <cwctype>
> +
>  #ifdef _GLIBCXX_NAMESPACE_C
>  using std::wctype_t;
>  using std::wctrans_t;
> diff --git a/libstdc++-v3/include/c_global/cctype 
> b/libstdc++-v3/include/c_global/cctype
> index 925433a7d80..0c6d027ed24 100644
> --- a/libstdc++-v3/include/c_global/cctype
> +++ b/libstdc++-v3/include/c_global/cctype
> @@ -36,14 +36,14 @@
>  // ISO C++ 14882: <ccytpe>
>  //
>
> +#ifndef _GLIBCXX_CCTYPE
> +#define _GLIBCXX_CCTYPE 1
> +
>  #pragma GCC system_header
>
>  #include <bits/c++config.h>
>  #include <ctype.h>
>
> -#ifndef _GLIBCXX_CCTYPE
> -#define _GLIBCXX_CCTYPE 1
> -
>  // Get rid of those macros defined in <ctype.h> in lieu of real functions.
>  #undef isalnum
>  #undef isalpha
> diff --git a/libstdc++-v3/include/c_global/cerrno 
> b/libstdc++-v3/include/c_global/cerrno
> index 772d4bed8aa..5cad0795b27 100644
> --- a/libstdc++-v3/include/c_global/cerrno
> +++ b/libstdc++-v3/include/c_global/cerrno
> @@ -36,14 +36,14 @@
>  // ISO C++ 14882: 19.3  Error numbers
>  //
>
> +#ifndef _GLIBCXX_CERRNO
> +#define _GLIBCXX_CERRNO 1
> +
>  #pragma GCC system_header
>
>  #include <bits/c++config.h>
>  #include <errno.h>
>
> -#ifndef _GLIBCXX_CERRNO
> -#define _GLIBCXX_CERRNO 1
> -
>  // Adhere to section 17.4.1.2 clause 5 of ISO 14882:1998
>  #ifndef errno
>  #define errno errno
> diff --git a/libstdc++-v3/include/c_global/cfloat 
> b/libstdc++-v3/include/c_global/cfloat
> index 38ff8309f19..bc90e75ba57 100644
> --- a/libstdc++-v3/include/c_global/cfloat
> +++ b/libstdc++-v3/include/c_global/cfloat
> @@ -36,14 +36,14 @@
>  // ISO C++ 14882: 18.2.2  Implementation properties: C library
>  //
>
> +#ifndef _GLIBCXX_CFLOAT
> +#define _GLIBCXX_CFLOAT 1
> +
>  #pragma GCC system_header
>
>  #include <bits/c++config.h>
>  #include <float.h>
>
> -#ifndef _GLIBCXX_CFLOAT
> -#define _GLIBCXX_CFLOAT 1
> -
>  #if __cplusplus >= 201103L
>  #  ifndef DECIMAL_DIG
>  #    define DECIMAL_DIG __DECIMAL_DIG__
> diff --git a/libstdc++-v3/include/c_global/climits 
> b/libstdc++-v3/include/c_global/climits
> index 7e374ef0c79..3fee65d36d2 100644
> --- a/libstdc++-v3/include/c_global/climits
> +++ b/libstdc++-v3/include/c_global/climits
> @@ -36,14 +36,14 @@
>  // ISO C++ 14882: 18.2.2  Implementation properties: C library
>  //
>
> +#ifndef _GLIBCXX_CLIMITS
> +#define _GLIBCXX_CLIMITS 1
> +
>  #pragma GCC system_header
>
>  #include <bits/c++config.h>
>  #include <limits.h>
>
> -#ifndef _GLIBCXX_CLIMITS
> -#define _GLIBCXX_CLIMITS 1
> -
>  #ifndef LLONG_MIN
>  #define LLONG_MIN (-__LONG_LONG_MAX__ - 1)
>  #endif
> diff --git a/libstdc++-v3/include/c_global/clocale 
> b/libstdc++-v3/include/c_global/clocale
> index 74114455a66..b795f5759d1 100644
> --- a/libstdc++-v3/include/c_global/clocale
> +++ b/libstdc++-v3/include/c_global/clocale
> @@ -36,14 +36,14 @@
>  // ISO C++ 14882: 18.2.2  Implementation properties: C library
>  //
>
> +#ifndef _GLIBCXX_CLOCALE
> +#define _GLIBCXX_CLOCALE 1
> +
>  #pragma GCC system_header
>
>  #include <bits/c++config.h>
>  #include <locale.h>
>
> -#ifndef _GLIBCXX_CLOCALE
> -#define _GLIBCXX_CLOCALE 1
> -
>  // Get rid of those macros defined in <locale.h> in lieu of real functions.
>  #undef setlocale
>  #undef localeconv
> diff --git a/libstdc++-v3/include/c_global/cmath 
> b/libstdc++-v3/include/c_global/cmath
> index dd0174f1987..ea76f446652 100644
> --- a/libstdc++-v3/include/c_global/cmath
> +++ b/libstdc++-v3/include/c_global/cmath
> @@ -36,6 +36,9 @@
>  // ISO C++ 14882: 26.5  C library
>  //
>
> +#ifndef _GLIBCXX_CMATH
> +#define _GLIBCXX_CMATH 1
> +
>  #pragma GCC system_header
>
>  #include <bits/requires_hosted.h>
> @@ -48,9 +51,6 @@
>  #undef _GLIBCXX_INCLUDE_NEXT_C_HEADERS
>  #include <bits/std_abs.h>
>
> -#ifndef _GLIBCXX_CMATH
> -#define _GLIBCXX_CMATH 1
> -
>  #define __glibcxx_want_hypot
>  #define __glibcxx_want_interpolate
>  #include <bits/version.h>
> diff --git a/libstdc++-v3/include/c_global/csetjmp 
> b/libstdc++-v3/include/c_global/csetjmp
> index c378dfaa54c..6b1a484d539 100644
> --- a/libstdc++-v3/include/c_global/csetjmp
> +++ b/libstdc++-v3/include/c_global/csetjmp
> @@ -36,14 +36,14 @@
>  // ISO C++ 14882: 20.4.6  C library
>  //
>
> +#ifndef _GLIBCXX_CSETJMP
> +#define _GLIBCXX_CSETJMP 1
> +
>  #pragma GCC system_header
>
>  #include <bits/c++config.h>
>  #include <setjmp.h>
>
> -#ifndef _GLIBCXX_CSETJMP
> -#define _GLIBCXX_CSETJMP 1
> -
>  // Get rid of those macros defined in <setjmp.h> in lieu of real functions.
>  #undef longjmp
>
> diff --git a/libstdc++-v3/include/c_global/csignal 
> b/libstdc++-v3/include/c_global/csignal
> index 4a6f25e86ea..dc8a3e00b29 100644
> --- a/libstdc++-v3/include/c_global/csignal
> +++ b/libstdc++-v3/include/c_global/csignal
> @@ -36,14 +36,14 @@
>  // ISO C++ 14882: 20.4.6  C library
>  //
>
> +#ifndef _GLIBCXX_CSIGNAL
> +#define _GLIBCXX_CSIGNAL 1
> +
>  #pragma GCC system_header
>
>  #include <bits/c++config.h>
>  #include <signal.h>
>
> -#ifndef _GLIBCXX_CSIGNAL
> -#define _GLIBCXX_CSIGNAL 1
> -
>  // Get rid of those macros defined in <signal.h> in lieu of real functions.
>  #undef raise
>
> diff --git a/libstdc++-v3/include/c_global/cstdarg 
> b/libstdc++-v3/include/c_global/cstdarg
> index ed5e0509094..fd960c8ca4b 100644
> --- a/libstdc++-v3/include/c_global/cstdarg
> +++ b/libstdc++-v3/include/c_global/cstdarg
> @@ -36,15 +36,15 @@
>  // ISO C++ 14882: 20.4.6  C library
>  //
>
> +#ifndef _GLIBCXX_CSTDARG
> +#define _GLIBCXX_CSTDARG 1
> +
>  #pragma GCC system_header
>
>  #undef __need___va_list
>  #include <bits/c++config.h>
>  #include <stdarg.h>
>
> -#ifndef _GLIBCXX_CSTDARG
> -#define _GLIBCXX_CSTDARG 1
> -
>  // Adhere to section 17.4.1.2 clause 5 of ISO 14882:1998
>  #ifndef va_end
>  #define va_end(ap) va_end (ap)
> diff --git a/libstdc++-v3/include/c_global/cstdio 
> b/libstdc++-v3/include/c_global/cstdio
> index 7674a4330c1..2b1f4fe78cd 100644
> --- a/libstdc++-v3/include/c_global/cstdio
> +++ b/libstdc++-v3/include/c_global/cstdio
> @@ -36,14 +36,14 @@
>  // ISO C++ 14882: 27.8.2  C Library files
>  //
>
> +#ifndef _GLIBCXX_CSTDIO
> +#define _GLIBCXX_CSTDIO 1
> +
>  #pragma GCC system_header
>
>  #include <bits/c++config.h>
>  #include <stdio.h>
>
> -#ifndef _GLIBCXX_CSTDIO
> -#define _GLIBCXX_CSTDIO 1
> -
>  #if __cplusplus <= 201103L && !defined(_GLIBCXX_HAVE_GETS)
>  extern "C" char* gets (char* __s) __attribute__((__deprecated__));
>  #endif
> diff --git a/libstdc++-v3/include/c_global/cstdlib 
> b/libstdc++-v3/include/c_global/cstdlib
> index 69e7a39eb44..e210b23e588 100644
> --- a/libstdc++-v3/include/c_global/cstdlib
> +++ b/libstdc++-v3/include/c_global/cstdlib
> @@ -36,13 +36,13 @@
>  // ISO C++ 14882: 20.4.6  C library
>  //
>
> +#ifndef _GLIBCXX_CSTDLIB
> +#define _GLIBCXX_CSTDLIB 1
> +
>  #pragma GCC system_header
>
>  #include <bits/c++config.h>
>
> -#ifndef _GLIBCXX_CSTDLIB
> -#define _GLIBCXX_CSTDLIB 1
> -
>  #if !_GLIBCXX_HOSTED
>  // The C standard does not require a freestanding implementation to
>  // provide <stdlib.h>.  However, the C++ standard does still require
> diff --git a/libstdc++-v3/include/c_global/cstring 
> b/libstdc++-v3/include/c_global/cstring
> index 5ccc6cc686e..eba409fd613 100644
> --- a/libstdc++-v3/include/c_global/cstring
> +++ b/libstdc++-v3/include/c_global/cstring
> @@ -36,15 +36,15 @@
>  // ISO C++ 14882: 20.4.6  C library
>  //
>
> +#ifndef _GLIBCXX_CSTRING
> +#define _GLIBCXX_CSTRING 1
> +
>  #pragma GCC system_header
>
>  #define __glibcxx_want_freestanding_cstring
>  #include <bits/version.h>
>  #include <string.h>
>
> -#ifndef _GLIBCXX_CSTRING
> -#define _GLIBCXX_CSTRING 1
> -
>  // Get rid of those macros defined in <string.h> in lieu of real functions.
>  #undef memchr
>  #undef memcmp
> diff --git a/libstdc++-v3/include/c_global/ctime 
> b/libstdc++-v3/include/c_global/ctime
> index cb6eb88959f..da16ba686db 100644
> --- a/libstdc++-v3/include/c_global/ctime
> +++ b/libstdc++-v3/include/c_global/ctime
> @@ -36,14 +36,14 @@
>  // ISO C++ 14882: 20.5  Date and time
>  //
>
> +#ifndef _GLIBCXX_CTIME
> +#define _GLIBCXX_CTIME 1
> +
>  #pragma GCC system_header
>
>  #include <bits/c++config.h>
>  #include <time.h>
>
> -#ifndef _GLIBCXX_CTIME
> -#define _GLIBCXX_CTIME 1
> -
>  // Get rid of those macros defined in <time.h> in lieu of real functions.
>  #undef clock
>  #undef difftime
> diff --git a/libstdc++-v3/include/c_global/cwchar 
> b/libstdc++-v3/include/c_global/cwchar
> index 325b3ac6bad..fabe178429f 100644
> --- a/libstdc++-v3/include/c_global/cwchar
> +++ b/libstdc++-v3/include/c_global/cwchar
> @@ -36,6 +36,9 @@
>  // ISO C++ 14882: 21.4
>  //
>
> +#ifndef _GLIBCXX_CWCHAR
> +#define _GLIBCXX_CWCHAR 1
> +
>  #pragma GCC system_header
>
>  #include <bits/c++config.h>
> @@ -44,9 +47,6 @@
>  #include <wchar.h>
>  #endif
>
> -#ifndef _GLIBCXX_CWCHAR
> -#define _GLIBCXX_CWCHAR 1
> -
>  // Need to do a bit of trickery here with mbstate_t as char_traits
>  // assumes it is in wchar.h, regardless of wchar_t specializations.
>  #ifndef _GLIBCXX_HAVE_MBSTATE_T
> diff --git a/libstdc++-v3/include/c_global/cwctype 
> b/libstdc++-v3/include/c_global/cwctype
> index 55c79d63cd2..54c8572426a 100644
> --- a/libstdc++-v3/include/c_global/cwctype
> +++ b/libstdc++-v3/include/c_global/cwctype
> @@ -36,6 +36,9 @@
>  // ISO C++ 14882: <cwctype>
>  //
>
> +#ifndef _GLIBCXX_CWCTYPE
> +#define _GLIBCXX_CWCTYPE 1
> +
>  #pragma GCC system_header
>
>  #include <bits/c++config.h>
> @@ -50,9 +53,6 @@
>  #include <wctype.h>
>  #endif // _GLIBCXX_HAVE_WCTYPE_H
>
> -#ifndef _GLIBCXX_CWCTYPE
> -#define _GLIBCXX_CWCTYPE 1
> -
>  // Get rid of those macros defined in <wctype.h> in lieu of real functions.
>  #undef iswalnum
>  #undef iswalpha
>
> base-commit: 898e3e95a6acf542baf03be95ce5bf7b3ad04276
> prerequisite-patch-id: b879726293513fcbc4b7df92bcc976404416b695
> --
> 2.46.0
>

Reply via email to