]> git.ipfire.org Git - thirdparty/glibc.git/blame - include/stdc-predef.h
test-container: Fix "unused code" warnings on HURD
[thirdparty/glibc.git] / include / stdc-predef.h
CommitLineData
581c785b 1/* Copyright (C) 1991-2022 Free Software Foundation, Inc.
ff3b3d82
JM
2 This file is part of the GNU C Library.
3
4 The GNU C Library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) any later version.
8
9 The GNU C Library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Lesser General Public License for more details.
13
14 You should have received a copy of the GNU Lesser General Public
15 License along with the GNU C Library; if not, see
5a82c748 16 <https://www.gnu.org/licenses/>. */
ff3b3d82
JM
17
18#ifndef _STDC_PREDEF_H
19#define _STDC_PREDEF_H 1
20
21/* This header is separate from features.h so that the compiler can
22 include it implicitly at the start of every compilation. It must
23 not itself include <features.h> or any other header that includes
24 <features.h> because the implicit include comes before any feature
25 test macros that may be defined in a source file before it first
26 explicitly includes a system header. GCC knows the name of this
27 header in order to preinclude it. */
28
1484e657
JM
29/* glibc's intent is to support the IEC 559 math functionality, real
30 and complex. If the GCC (4.9 and later) predefined macros
31 specifying compiler intent are available, use them to determine
32 whether the overall intent is to support these features; otherwise,
33 presume an older compiler has intent to support these features and
34 define these macros by default. */
35
36#ifdef __GCC_IEC_559
37# if __GCC_IEC_559 > 0
38# define __STDC_IEC_559__ 1
8807e560 39# define __STDC_IEC_60559_BFP__ 201404L
1484e657
JM
40# endif
41#else
42# define __STDC_IEC_559__ 1
8807e560 43# define __STDC_IEC_60559_BFP__ 201404L
1484e657
JM
44#endif
45
46#ifdef __GCC_IEC_559_COMPLEX
47# if __GCC_IEC_559_COMPLEX > 0
48# define __STDC_IEC_559_COMPLEX__ 1
8807e560 49# define __STDC_IEC_60559_COMPLEX__ 201404L
1484e657
JM
50# endif
51#else
52# define __STDC_IEC_559_COMPLEX__ 1
8807e560 53# define __STDC_IEC_60559_COMPLEX__ 201404L
1484e657 54#endif
ff3b3d82 55
925fac77
MF
56/* wchar_t uses Unicode 10.0.0. Version 10.0 of the Unicode Standard is
57 synchronized with ISO/IEC 10646:2017, fifth edition, plus
58 the following additions from Amendment 1 to the fifth edition:
59 - 56 emoji characters
60 - 285 hentaigana
61 - 3 additional Zanabazar Square characters */
62#define __STDC_ISO_10646__ 201706L
ff3b3d82
JM
63
64#endif