1// Predefined symbols and macros -*- C++ -*-
2
3// Copyright (C) 1997-2022 Free Software Foundation, Inc.
4//
5// This file is part of the GNU ISO C++ Library. This library is free
6// software; you can redistribute it and/or modify it under the
7// terms of the GNU General Public License as published by the
8// Free Software Foundation; either version 3, or (at your option)
9// any later version.
10
11// This library is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14// GNU General Public License for more details.
15
16// Under Section 7 of GPL version 3, you are granted additional
17// permissions described in the GCC Runtime Library Exception, version
18// 3.1, as published by the Free Software Foundation.
19
20// You should have received a copy of the GNU General Public License and
21// a copy of the GCC Runtime Library Exception along with this program;
22// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
23// <http://www.gnu.org/licenses/>.
24
25/** @file bits/c++config.h
26 * This is an internal header file, included by other library headers.
27 * Do not attempt to use it directly. @headername{version}
28 */
29
30#ifndef _GLIBCXX_CXX_CONFIG_H
31#define _GLIBCXX_CXX_CONFIG_H 1
32
33// The major release number for the GCC release the C++ library belongs to.
34#define _GLIBCXX_RELEASE 12
35
36// The datestamp of the C++ library in compressed ISO date format.
37#define __GLIBCXX__ 20220319
38
39// Macros for various attributes.
40// _GLIBCXX_PURE
41// _GLIBCXX_CONST
42// _GLIBCXX_NORETURN
43// _GLIBCXX_NOTHROW
44// _GLIBCXX_VISIBILITY
45#ifndef _GLIBCXX_PURE
46# define _GLIBCXX_PURE __attribute__ ((__pure__))
47#endif
48
49#ifndef _GLIBCXX_CONST
50# define _GLIBCXX_CONST __attribute__ ((__const__))
51#endif
52
53#ifndef _GLIBCXX_NORETURN
54# define _GLIBCXX_NORETURN __attribute__ ((__noreturn__))
55#endif
56
57// See below for C++
58#ifndef _GLIBCXX_NOTHROW
59# ifndef __cplusplus
60# define _GLIBCXX_NOTHROW __attribute__((__nothrow__))
61# endif
62#endif
63
64// Macros for visibility attributes.
65// _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY
66// _GLIBCXX_VISIBILITY
67# define _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY 1
68
69#if _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY
70# define _GLIBCXX_VISIBILITY(V) __attribute__ ((__visibility__ (#V)))
71#else
72// If this is not supplied by the OS-specific or CPU-specific
73// headers included below, it will be defined to an empty default.
74# define _GLIBCXX_VISIBILITY(V) _GLIBCXX_PSEUDO_VISIBILITY(V)
75#endif
76
77// Macros for deprecated attributes.
78// _GLIBCXX_USE_DEPRECATED
79// _GLIBCXX_DEPRECATED
80// _GLIBCXX_DEPRECATED_SUGGEST( string-literal )
81// _GLIBCXX11_DEPRECATED
82// _GLIBCXX11_DEPRECATED_SUGGEST( string-literal )
83// _GLIBCXX14_DEPRECATED
84// _GLIBCXX14_DEPRECATED_SUGGEST( string-literal )
85// _GLIBCXX17_DEPRECATED
86// _GLIBCXX17_DEPRECATED_SUGGEST( string-literal )
87// _GLIBCXX20_DEPRECATED( string-literal )
88// _GLIBCXX20_DEPRECATED_SUGGEST( string-literal )
89#ifndef _GLIBCXX_USE_DEPRECATED
90# define _GLIBCXX_USE_DEPRECATED 1
91#endif
92
93#if defined(__DEPRECATED)
94# define _GLIBCXX_DEPRECATED __attribute__ ((__deprecated__))
95# define _GLIBCXX_DEPRECATED_SUGGEST(ALT) \
96 __attribute__ ((__deprecated__ ("use '" ALT "' instead")))
97#else
98# define _GLIBCXX_DEPRECATED
99# define _GLIBCXX_DEPRECATED_SUGGEST(ALT)
100#endif
101
102#if defined(__DEPRECATED) && (__cplusplus >= 201103L)
103# define _GLIBCXX11_DEPRECATED _GLIBCXX_DEPRECATED
104# define _GLIBCXX11_DEPRECATED_SUGGEST(ALT) _GLIBCXX_DEPRECATED_SUGGEST(ALT)
105#else
106# define _GLIBCXX11_DEPRECATED
107# define _GLIBCXX11_DEPRECATED_SUGGEST(ALT)
108#endif
109
110#if defined(__DEPRECATED) && (__cplusplus >= 201402L)
111# define _GLIBCXX14_DEPRECATED _GLIBCXX_DEPRECATED
112# define _GLIBCXX14_DEPRECATED_SUGGEST(ALT) _GLIBCXX_DEPRECATED_SUGGEST(ALT)
113#else
114# define _GLIBCXX14_DEPRECATED
115# define _GLIBCXX14_DEPRECATED_SUGGEST(ALT)
116#endif
117
118#if defined(__DEPRECATED) && (__cplusplus >= 201703L)
119# define _GLIBCXX17_DEPRECATED [[__deprecated__]]
120# define _GLIBCXX17_DEPRECATED_SUGGEST(ALT) _GLIBCXX_DEPRECATED_SUGGEST(ALT)
121#else
122# define _GLIBCXX17_DEPRECATED
123# define _GLIBCXX17_DEPRECATED_SUGGEST(ALT)
124#endif
125
126#if defined(__DEPRECATED) && (__cplusplus >= 202002L)
127# define _GLIBCXX20_DEPRECATED(MSG) [[deprecated(MSG)]]
128# define _GLIBCXX20_DEPRECATED_SUGGEST(ALT) _GLIBCXX_DEPRECATED_SUGGEST(ALT)
129#else
130# define _GLIBCXX20_DEPRECATED(MSG)
131# define _GLIBCXX20_DEPRECATED_SUGGEST(ALT)
132#endif
133
134// Macros for ABI tag attributes.
135#ifndef _GLIBCXX_ABI_TAG_CXX11
136# define _GLIBCXX_ABI_TAG_CXX11 __attribute ((__abi_tag__ ("cxx11")))
137#endif
138
139// Macro to warn about unused results.
140#if __cplusplus >= 201703L
141# define _GLIBCXX_NODISCARD [[__nodiscard__]]
142#else
143# define _GLIBCXX_NODISCARD
144#endif
145
146
147
148#if __cplusplus
149
150// Macro for constexpr, to support in mixed 03/0x mode.
151#ifndef _GLIBCXX_CONSTEXPR
152# if __cplusplus >= 201103L
153# define _GLIBCXX_CONSTEXPR constexpr
154# define _GLIBCXX_USE_CONSTEXPR constexpr
155# else
156# define _GLIBCXX_CONSTEXPR
157# define _GLIBCXX_USE_CONSTEXPR const
158# endif
159#endif
160
161#ifndef _GLIBCXX14_CONSTEXPR
162# if __cplusplus >= 201402L
163# define _GLIBCXX14_CONSTEXPR constexpr
164# else
165# define _GLIBCXX14_CONSTEXPR
166# endif
167#endif
168
169#ifndef _GLIBCXX17_CONSTEXPR
170# if __cplusplus >= 201703L
171# define _GLIBCXX17_CONSTEXPR constexpr
172# else
173# define _GLIBCXX17_CONSTEXPR
174# endif
175#endif
176
177#ifndef _GLIBCXX20_CONSTEXPR
178# if __cplusplus >= 202002L
179# define _GLIBCXX20_CONSTEXPR constexpr
180# else
181# define _GLIBCXX20_CONSTEXPR
182# endif
183#endif
184
185#ifndef _GLIBCXX23_CONSTEXPR
186# if __cplusplus >= 202100L
187# define _GLIBCXX23_CONSTEXPR constexpr
188# else
189# define _GLIBCXX23_CONSTEXPR
190# endif
191#endif
192
193#ifndef _GLIBCXX17_INLINE
194# if __cplusplus >= 201703L
195# define _GLIBCXX17_INLINE inline
196# else
197# define _GLIBCXX17_INLINE
198# endif
199#endif
200
201// Macro for noexcept, to support in mixed 03/0x mode.
202#ifndef _GLIBCXX_NOEXCEPT
203# if __cplusplus >= 201103L
204# define _GLIBCXX_NOEXCEPT noexcept
205# define _GLIBCXX_NOEXCEPT_IF(...) noexcept(__VA_ARGS__)
206# define _GLIBCXX_USE_NOEXCEPT noexcept
207# define _GLIBCXX_THROW(_EXC)
208# else
209# define _GLIBCXX_NOEXCEPT
210# define _GLIBCXX_NOEXCEPT_IF(...)
211# define _GLIBCXX_USE_NOEXCEPT throw()
212# define _GLIBCXX_THROW(_EXC) throw(_EXC)
213# endif
214#endif
215
216#ifndef _GLIBCXX_NOTHROW
217# define _GLIBCXX_NOTHROW _GLIBCXX_USE_NOEXCEPT
218#endif
219
220#ifndef _GLIBCXX_THROW_OR_ABORT
221# if __cpp_exceptions
222# define _GLIBCXX_THROW_OR_ABORT(_EXC) (throw (_EXC))
223# else
224# define _GLIBCXX_THROW_OR_ABORT(_EXC) (__builtin_abort())
225# endif
226#endif
227
228#if __cpp_noexcept_function_type
229#define _GLIBCXX_NOEXCEPT_PARM , bool _NE
230#define _GLIBCXX_NOEXCEPT_QUAL noexcept (_NE)
231#else
232#define _GLIBCXX_NOEXCEPT_PARM
233#define _GLIBCXX_NOEXCEPT_QUAL
234#endif
235
236// Macro for extern template, ie controlling template linkage via use
237// of extern keyword on template declaration. As documented in the g++
238// manual, it inhibits all implicit instantiations and is used
239// throughout the library to avoid multiple weak definitions for
240// required types that are already explicitly instantiated in the
241// library binary. This substantially reduces the binary size of
242// resulting executables.
243// Special case: _GLIBCXX_EXTERN_TEMPLATE == -1 disallows extern
244// templates only in basic_string, thus activating its debug-mode
245// checks even at -O0.
246# define _GLIBCXX_EXTERN_TEMPLATE 1
247
248/*
249 Outline of libstdc++ namespaces.
250
251 namespace std
252 {
253 namespace __debug { }
254 namespace __parallel { }
255 namespace __cxx1998 { }
256
257 namespace __detail {
258 namespace __variant { } // C++17
259 }
260
261 namespace rel_ops { }
262
263 namespace tr1
264 {
265 namespace placeholders { }
266 namespace regex_constants { }
267 namespace __detail { }
268 }
269
270 namespace tr2 { }
271
272 namespace decimal { }
273
274 namespace chrono { } // C++11
275 namespace placeholders { } // C++11
276 namespace regex_constants { } // C++11
277 namespace this_thread { } // C++11
278 inline namespace literals { // C++14
279 inline namespace chrono_literals { } // C++14
280 inline namespace complex_literals { } // C++14
281 inline namespace string_literals { } // C++14
282 inline namespace string_view_literals { } // C++17
283 }
284 }
285
286 namespace abi { }
287
288 namespace __gnu_cxx
289 {
290 namespace __detail { }
291 }
292
293 For full details see:
294 http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/namespaces.html
295*/
296namespace std
297{
298 typedef __SIZE_TYPE__ size_t;
299 typedef __PTRDIFF_TYPE__ ptrdiff_t;
300
301#if __cplusplus >= 201103L
302 typedef decltype(nullptr) nullptr_t;
303#endif
304
305#pragma GCC visibility push(default)
306 // This allows the library to terminate without including all of <exception>
307 // and without making the declaration of std::terminate visible to users.
308 extern "C++" __attribute__ ((__noreturn__, __always_inline__))
309 inline void __terminate() _GLIBCXX_USE_NOEXCEPT
310 {
311 void terminate() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__noreturn__));
312 terminate();
313 }
314#pragma GCC visibility pop
315}
316
317# define _GLIBCXX_USE_DUAL_ABI 1
318
319#if ! _GLIBCXX_USE_DUAL_ABI
320// Ignore any pre-defined value of _GLIBCXX_USE_CXX11_ABI
321# undef _GLIBCXX_USE_CXX11_ABI
322#endif
323
324#ifndef _GLIBCXX_USE_CXX11_ABI
325# define _GLIBCXX_USE_CXX11_ABI 1
326#endif
327
328#if _GLIBCXX_USE_CXX11_ABI
329namespace std
330{
331 inline namespace __cxx11 __attribute__((__abi_tag__ ("cxx11"))) { }
332}
333namespace __gnu_cxx
334{
335 inline namespace __cxx11 __attribute__((__abi_tag__ ("cxx11"))) { }
336}
337# define _GLIBCXX_NAMESPACE_CXX11 __cxx11::
338# define _GLIBCXX_BEGIN_NAMESPACE_CXX11 namespace __cxx11 {
339# define _GLIBCXX_END_NAMESPACE_CXX11 }
340# define _GLIBCXX_DEFAULT_ABI_TAG _GLIBCXX_ABI_TAG_CXX11
341#else
342# define _GLIBCXX_NAMESPACE_CXX11
343# define _GLIBCXX_BEGIN_NAMESPACE_CXX11
344# define _GLIBCXX_END_NAMESPACE_CXX11
345# define _GLIBCXX_DEFAULT_ABI_TAG
346#endif
347
348// Defined if inline namespaces are used for versioning.
349# define _GLIBCXX_INLINE_VERSION 0
350
351// Inline namespace for symbol versioning.
352#if _GLIBCXX_INLINE_VERSION
353# define _GLIBCXX_BEGIN_NAMESPACE_VERSION namespace __8 {
354# define _GLIBCXX_END_NAMESPACE_VERSION }
355
356namespace std
357{
358inline _GLIBCXX_BEGIN_NAMESPACE_VERSION
359#if __cplusplus >= 201402L
360 inline namespace literals {
361 inline namespace chrono_literals { }
362 inline namespace complex_literals { }
363 inline namespace string_literals { }
364#if __cplusplus > 201402L
365 inline namespace string_view_literals { }
366#endif // C++17
367 }
368#endif // C++14
369_GLIBCXX_END_NAMESPACE_VERSION
370}
371
372namespace __gnu_cxx
373{
374inline _GLIBCXX_BEGIN_NAMESPACE_VERSION
375_GLIBCXX_END_NAMESPACE_VERSION
376}
377
378#else
379# define _GLIBCXX_BEGIN_NAMESPACE_VERSION
380# define _GLIBCXX_END_NAMESPACE_VERSION
381#endif
382
383// Inline namespaces for special modes: debug, parallel.
384#if defined(_GLIBCXX_DEBUG) || defined(_GLIBCXX_PARALLEL)
385namespace std
386{
387_GLIBCXX_BEGIN_NAMESPACE_VERSION
388
389 // Non-inline namespace for components replaced by alternates in active mode.
390 namespace __cxx1998
391 {
392# if _GLIBCXX_USE_CXX11_ABI
393 inline namespace __cxx11 __attribute__((__abi_tag__ ("cxx11"))) { }
394# endif
395 }
396
397_GLIBCXX_END_NAMESPACE_VERSION
398
399 // Inline namespace for debug mode.
400# ifdef _GLIBCXX_DEBUG
401 inline namespace __debug { }
402# endif
403
404 // Inline namespaces for parallel mode.
405# ifdef _GLIBCXX_PARALLEL
406 inline namespace __parallel { }
407# endif
408}
409
410// Check for invalid usage and unsupported mixed-mode use.
411# if defined(_GLIBCXX_DEBUG) && defined(_GLIBCXX_PARALLEL)
412# error illegal use of multiple inlined namespaces
413# endif
414
415// Check for invalid use due to lack for weak symbols.
416# if __NO_INLINE__ && !__GXX_WEAK__
417# warning currently using inlined namespace mode which may fail \
418 without inlining due to lack of weak symbols
419# endif
420#endif
421
422// Macros for namespace scope. Either namespace std:: or the name
423// of some nested namespace within it corresponding to the active mode.
424// _GLIBCXX_STD_A
425// _GLIBCXX_STD_C
426//
427// Macros for opening/closing conditional namespaces.
428// _GLIBCXX_BEGIN_NAMESPACE_ALGO
429// _GLIBCXX_END_NAMESPACE_ALGO
430// _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
431// _GLIBCXX_END_NAMESPACE_CONTAINER
432#if defined(_GLIBCXX_DEBUG)
433# define _GLIBCXX_STD_C __cxx1998
434# define _GLIBCXX_BEGIN_NAMESPACE_CONTAINER \
435 namespace _GLIBCXX_STD_C {
436# define _GLIBCXX_END_NAMESPACE_CONTAINER }
437#else
438# define _GLIBCXX_STD_C std
439# define _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
440# define _GLIBCXX_END_NAMESPACE_CONTAINER
441#endif
442
443#ifdef _GLIBCXX_PARALLEL
444# define _GLIBCXX_STD_A __cxx1998
445# define _GLIBCXX_BEGIN_NAMESPACE_ALGO \
446 namespace _GLIBCXX_STD_A {
447# define _GLIBCXX_END_NAMESPACE_ALGO }
448#else
449# define _GLIBCXX_STD_A std
450# define _GLIBCXX_BEGIN_NAMESPACE_ALGO
451# define _GLIBCXX_END_NAMESPACE_ALGO
452#endif
453
454// GLIBCXX_ABI Deprecated
455// Define if compatibility should be provided for -mlong-double-64.
456#undef _GLIBCXX_LONG_DOUBLE_COMPAT
457
458// Define if compatibility should be provided for alternative 128-bit long
459// double formats. Not possible for Clang until __ibm128 is supported.
460#ifndef __clang__
461#undef _GLIBCXX_LONG_DOUBLE_ALT128_COMPAT
462#endif
463
464// Inline namespaces for long double 128 modes.
465#if defined _GLIBCXX_LONG_DOUBLE_ALT128_COMPAT \
466 && defined __LONG_DOUBLE_IEEE128__
467namespace std
468{
469 // Namespaces for 128-bit IEEE long double format on 64-bit POWER LE.
470 inline namespace __gnu_cxx_ieee128 { }
471 inline namespace __gnu_cxx11_ieee128 { }
472}
473# define _GLIBCXX_NAMESPACE_LDBL __gnu_cxx_ieee128::
474# define _GLIBCXX_BEGIN_NAMESPACE_LDBL namespace __gnu_cxx_ieee128 {
475# define _GLIBCXX_END_NAMESPACE_LDBL }
476# define _GLIBCXX_NAMESPACE_LDBL_OR_CXX11 __gnu_cxx11_ieee128::
477# define _GLIBCXX_BEGIN_NAMESPACE_LDBL_OR_CXX11 namespace __gnu_cxx11_ieee128 {
478# define _GLIBCXX_END_NAMESPACE_LDBL_OR_CXX11 }
479
480#else // _GLIBCXX_LONG_DOUBLE_ALT128_COMPAT && IEEE128
481
482#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
483namespace std
484{
485 inline namespace __gnu_cxx_ldbl128 { }
486}
487# define _GLIBCXX_NAMESPACE_LDBL __gnu_cxx_ldbl128::
488# define _GLIBCXX_BEGIN_NAMESPACE_LDBL namespace __gnu_cxx_ldbl128 {
489# define _GLIBCXX_END_NAMESPACE_LDBL }
490#else
491# define _GLIBCXX_NAMESPACE_LDBL
492# define _GLIBCXX_BEGIN_NAMESPACE_LDBL
493# define _GLIBCXX_END_NAMESPACE_LDBL
494#endif
495
496#if _GLIBCXX_USE_CXX11_ABI
497# define _GLIBCXX_NAMESPACE_LDBL_OR_CXX11 _GLIBCXX_NAMESPACE_CXX11
498# define _GLIBCXX_BEGIN_NAMESPACE_LDBL_OR_CXX11 _GLIBCXX_BEGIN_NAMESPACE_CXX11
499# define _GLIBCXX_END_NAMESPACE_LDBL_OR_CXX11 _GLIBCXX_END_NAMESPACE_CXX11
500#else
501# define _GLIBCXX_NAMESPACE_LDBL_OR_CXX11 _GLIBCXX_NAMESPACE_LDBL
502# define _GLIBCXX_BEGIN_NAMESPACE_LDBL_OR_CXX11 _GLIBCXX_BEGIN_NAMESPACE_LDBL
503# define _GLIBCXX_END_NAMESPACE_LDBL_OR_CXX11 _GLIBCXX_END_NAMESPACE_LDBL
504#endif
505
506#endif // _GLIBCXX_LONG_DOUBLE_ALT128_COMPAT && IEEE128
507
508namespace std
509{
510#pragma GCC visibility push(default)
511 // Internal version of std::is_constant_evaluated().
512 // This can be used without checking if the compiler supports the feature.
513 // The macro _GLIBCXX_HAVE_IS_CONSTANT_EVALUATED can be used to check if
514 // the compiler support is present to make this function work as expected.
515 _GLIBCXX_CONSTEXPR inline bool
516 __is_constant_evaluated() _GLIBCXX_NOEXCEPT
517 {
518#if __cpp_if_consteval >= 202106L
519# define _GLIBCXX_HAVE_IS_CONSTANT_EVALUATED 1
520 if consteval { return true; } else { return false; }
521#elif __cplusplus >= 201103L && __has_builtin(__builtin_is_constant_evaluated)
522# define _GLIBCXX_HAVE_IS_CONSTANT_EVALUATED 1
523 return __builtin_is_constant_evaluated();
524#else
525 return false;
526#endif
527 }
528#pragma GCC visibility pop
529}
530
531// Debug Mode implies checking assertions.
532#if defined(_GLIBCXX_DEBUG) && !defined(_GLIBCXX_ASSERTIONS)
533# define _GLIBCXX_ASSERTIONS 1
534#endif
535
536// Disable std::string explicit instantiation declarations in order to assert.
537#ifdef _GLIBCXX_ASSERTIONS
538# undef _GLIBCXX_EXTERN_TEMPLATE
539# define _GLIBCXX_EXTERN_TEMPLATE -1
540#endif
541
542
543#if _GLIBCXX_HAVE_IS_CONSTANT_EVALUATED
544# define __glibcxx_constexpr_assert(cond) \
545 if (std::__is_constant_evaluated() && !bool(cond)) \
546 __builtin_unreachable() /* precondition violation detected! */
547#else
548# define __glibcxx_constexpr_assert(unevaluated)
549#endif
550
551#define _GLIBCXX_VERBOSE_ASSERT 1
552
553// Assert.
554#if defined(_GLIBCXX_ASSERTIONS) \
555 || defined(_GLIBCXX_PARALLEL) || defined(_GLIBCXX_PARALLEL_ASSERTIONS)
556# ifdef _GLIBCXX_VERBOSE_ASSERT
557namespace std
558{
559#pragma GCC visibility push(default)
560 // Avoid the use of assert, because we're trying to keep the <cassert>
561 // include out of the mix.
562 extern "C++" _GLIBCXX_NORETURN
563 void
564 __glibcxx_assert_fail(const char* __file, int __line,
565 const char* __function, const char* __condition)
566 _GLIBCXX_NOEXCEPT;
567#pragma GCC visibility pop
568}
569#define __glibcxx_assert_impl(_Condition) \
570 if (__builtin_expect(!bool(_Condition), false)) \
571 { \
572 __glibcxx_constexpr_assert(false); \
573 std::__glibcxx_assert_fail(__FILE__, __LINE__, __PRETTY_FUNCTION__, \
574 #_Condition); \
575 }
576# else // ! VERBOSE_ASSERT
577# define __glibcxx_assert_impl(_Condition) \
578 if (__builtin_expect(!bool(_Condition), false)) \
579 { \
580 __glibcxx_constexpr_assert(false); \
581 __builtin_abort(); \
582 }
583# endif
584#endif
585
586#if defined(_GLIBCXX_ASSERTIONS)
587# define __glibcxx_assert(cond) \
588 do { __glibcxx_assert_impl(cond); } while (false)
589#else
590# define __glibcxx_assert(cond) \
591 do { __glibcxx_constexpr_assert(cond); } while (false)
592#endif
593
594// Macro indicating that TSAN is in use.
595#if __SANITIZE_THREAD__
596# define _GLIBCXX_TSAN 1
597#elif defined __has_feature
598# if __has_feature(thread_sanitizer)
599# define _GLIBCXX_TSAN 1
600# endif
601#endif
602
603// Macros for race detectors.
604// _GLIBCXX_SYNCHRONIZATION_HAPPENS_BEFORE(A) and
605// _GLIBCXX_SYNCHRONIZATION_HAPPENS_AFTER(A) should be used to explain
606// atomic (lock-free) synchronization to race detectors:
607// the race detector will infer a happens-before arc from the former to the
608// latter when they share the same argument pointer.
609//
610// The most frequent use case for these macros (and the only case in the
611// current implementation of the library) is atomic reference counting:
612// void _M_remove_reference()
613// {
614// _GLIBCXX_SYNCHRONIZATION_HAPPENS_BEFORE(&this->_M_refcount);
615// if (__gnu_cxx::__exchange_and_add_dispatch(&this->_M_refcount, -1) <= 0)
616// {
617// _GLIBCXX_SYNCHRONIZATION_HAPPENS_AFTER(&this->_M_refcount);
618// _M_destroy(__a);
619// }
620// }
621// The annotations in this example tell the race detector that all memory
622// accesses occurred when the refcount was positive do not race with
623// memory accesses which occurred after the refcount became zero.
624#ifndef _GLIBCXX_SYNCHRONIZATION_HAPPENS_BEFORE
625# define _GLIBCXX_SYNCHRONIZATION_HAPPENS_BEFORE(A)
626#endif
627#ifndef _GLIBCXX_SYNCHRONIZATION_HAPPENS_AFTER
628# define _GLIBCXX_SYNCHRONIZATION_HAPPENS_AFTER(A)
629#endif
630
631// Macros for C linkage: define extern "C" linkage only when using C++.
632# define _GLIBCXX_BEGIN_EXTERN_C extern "C" {
633# define _GLIBCXX_END_EXTERN_C }
634
635# define _GLIBCXX_USE_ALLOCATOR_NEW 1
636
637#ifdef __SIZEOF_INT128__
638#if ! defined __GLIBCXX_TYPE_INT_N_0 && ! defined __STRICT_ANSI__
639// If __int128 is supported, we expect __GLIBCXX_TYPE_INT_N_0 to be defined
640// unless the compiler is in strict mode. If it's not defined and the strict
641// macro is not defined, something is wrong.
642#warning "__STRICT_ANSI__ seems to have been undefined; this is not supported"
643#endif
644#endif
645
646#else // !__cplusplus
647# define _GLIBCXX_BEGIN_EXTERN_C
648# define _GLIBCXX_END_EXTERN_C
649#endif
650
651
652// First includes.
653
654// Pick up any OS-specific definitions.
655#include <bits/os_defines.h>
656
657// Pick up any CPU-specific definitions.
658#include <bits/cpu_defines.h>
659
660// If platform uses neither visibility nor psuedo-visibility,
661// specify empty default for namespace annotation macros.
662#ifndef _GLIBCXX_PSEUDO_VISIBILITY
663# define _GLIBCXX_PSEUDO_VISIBILITY(V)
664#endif
665
666// Certain function definitions that are meant to be overridable from
667// user code are decorated with this macro. For some targets, this
668// macro causes these definitions to be weak.
669#ifndef _GLIBCXX_WEAK_DEFINITION
670# define _GLIBCXX_WEAK_DEFINITION
671#endif
672
673// By default, we assume that __GXX_WEAK__ also means that there is support
674// for declaring functions as weak while not defining such functions. This
675// allows for referring to functions provided by other libraries (e.g.,
676// libitm) without depending on them if the respective features are not used.
677#ifndef _GLIBCXX_USE_WEAK_REF
678# define _GLIBCXX_USE_WEAK_REF __GXX_WEAK__
679#endif
680
681// Conditionally enable annotations for the Transactional Memory TS on C++11.
682// Most of the following conditions are due to limitations in the current
683// implementation.
684#if __cplusplus >= 201103L && _GLIBCXX_USE_CXX11_ABI \
685 && _GLIBCXX_USE_DUAL_ABI && __cpp_transactional_memory >= 201500L \
686 && !_GLIBCXX_FULLY_DYNAMIC_STRING && _GLIBCXX_USE_WEAK_REF \
687 && _GLIBCXX_USE_ALLOCATOR_NEW
688#define _GLIBCXX_TXN_SAFE transaction_safe
689#define _GLIBCXX_TXN_SAFE_DYN transaction_safe_dynamic
690#else
691#define _GLIBCXX_TXN_SAFE
692#define _GLIBCXX_TXN_SAFE_DYN
693#endif
694
695#if __cplusplus > 201402L
696// In C++17 mathematical special functions are in namespace std.
697# define _GLIBCXX_USE_STD_SPEC_FUNCS 1
698#elif __cplusplus >= 201103L && __STDCPP_WANT_MATH_SPEC_FUNCS__ != 0
699// For C++11 and C++14 they are in namespace std when requested.
700# define _GLIBCXX_USE_STD_SPEC_FUNCS 1
701#endif
702
703// The remainder of the prewritten config is automatic; all the
704// user hooks are listed above.
705
706// Create a boolean flag to be used to determine if --fast-math is set.
707#ifdef __FAST_MATH__
708# define _GLIBCXX_FAST_MATH 1
709#else
710# define _GLIBCXX_FAST_MATH 0
711#endif
712
713// This marks string literals in header files to be extracted for eventual
714// translation. It is primarily used for messages in thrown exceptions; see
715// src/functexcept.cc. We use __N because the more traditional _N is used
716// for something else under certain OSes (see BADNAMES).
717#define __N(msgid) (msgid)
718
719// For example, <windows.h> is known to #define min and max as macros...
720#undef min
721#undef max
722
723// N.B. these _GLIBCXX_USE_C99_XXX macros are defined unconditionally
724// so they should be tested with #if not with #ifdef.
725#if __cplusplus >= 201103L
726# ifndef _GLIBCXX_USE_C99_MATH
727# define _GLIBCXX_USE_C99_MATH _GLIBCXX11_USE_C99_MATH
728# endif
729# ifndef _GLIBCXX_USE_C99_COMPLEX
730# define _GLIBCXX_USE_C99_COMPLEX _GLIBCXX11_USE_C99_COMPLEX
731# endif
732# ifndef _GLIBCXX_USE_C99_STDIO
733# define _GLIBCXX_USE_C99_STDIO _GLIBCXX11_USE_C99_STDIO
734# endif
735# ifndef _GLIBCXX_USE_C99_STDLIB
736# define _GLIBCXX_USE_C99_STDLIB _GLIBCXX11_USE_C99_STDLIB
737# endif
738# ifndef _GLIBCXX_USE_C99_WCHAR
739# define _GLIBCXX_USE_C99_WCHAR _GLIBCXX11_USE_C99_WCHAR
740# endif
741#else
742# ifndef _GLIBCXX_USE_C99_MATH
743# define _GLIBCXX_USE_C99_MATH _GLIBCXX98_USE_C99_MATH
744# endif
745# ifndef _GLIBCXX_USE_C99_COMPLEX
746# define _GLIBCXX_USE_C99_COMPLEX _GLIBCXX98_USE_C99_COMPLEX
747# endif
748# ifndef _GLIBCXX_USE_C99_STDIO
749# define _GLIBCXX_USE_C99_STDIO _GLIBCXX98_USE_C99_STDIO
750# endif
751# ifndef _GLIBCXX_USE_C99_STDLIB
752# define _GLIBCXX_USE_C99_STDLIB _GLIBCXX98_USE_C99_STDLIB
753# endif
754# ifndef _GLIBCXX_USE_C99_WCHAR
755# define _GLIBCXX_USE_C99_WCHAR _GLIBCXX98_USE_C99_WCHAR
756# endif
757#endif
758
759// Unless explicitly specified, enable char8_t extensions only if the core
760// language char8_t feature macro is defined.
761#ifndef _GLIBCXX_USE_CHAR8_T
762# ifdef __cpp_char8_t
763# define _GLIBCXX_USE_CHAR8_T 1
764# endif
765#endif
766#ifdef _GLIBCXX_USE_CHAR8_T
767# define __cpp_lib_char8_t 201907L
768#endif
769
770/* Define if __float128 is supported on this host. */
771#if defined(__FLOAT128__) || defined(__SIZEOF_FLOAT128__)
772/* For powerpc64 don't use __float128 when it's the same type as long double. */
773# if !(defined(_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT) && defined(__LONG_DOUBLE_IEEE128__))
774# undef _GLIBCXX_USE_FLOAT128
775# endif
776#endif
777
778// Define if float has the IEEE binary32 format.
779#if __FLT_MANT_DIG__ == 24 \
780 && __FLT_MIN_EXP__ == -125 \
781 && __FLT_MAX_EXP__ == 128
782# define _GLIBCXX_FLOAT_IS_IEEE_BINARY32 1
783#endif
784
785// Define if double has the IEEE binary64 format.
786#if __DBL_MANT_DIG__ == 53 \
787 && __DBL_MIN_EXP__ == -1021 \
788 && __DBL_MAX_EXP__ == 1024
789# define _GLIBCXX_DOUBLE_IS_IEEE_BINARY64 1
790#endif
791
792#ifdef __has_builtin
793# ifdef __is_identifier
794// Intel and older Clang require !__is_identifier for some built-ins:
795# define _GLIBCXX_HAS_BUILTIN(B) __has_builtin(B) || ! __is_identifier(B)
796# else
797# define _GLIBCXX_HAS_BUILTIN(B) __has_builtin(B)
798# endif
799#endif
800
801#if _GLIBCXX_HAS_BUILTIN(__has_unique_object_representations)
802# define _GLIBCXX_HAVE_BUILTIN_HAS_UNIQ_OBJ_REP 1
803#endif
804
805#if _GLIBCXX_HAS_BUILTIN(__is_aggregate)
806# define _GLIBCXX_HAVE_BUILTIN_IS_AGGREGATE 1
807#endif
808
809#if _GLIBCXX_HAS_BUILTIN(__is_same)
810# define _GLIBCXX_HAVE_BUILTIN_IS_SAME 1
811#endif
812
813#if _GLIBCXX_HAS_BUILTIN(__builtin_launder)
814# define _GLIBCXX_HAVE_BUILTIN_LAUNDER 1
815#endif
816
817#undef _GLIBCXX_HAS_BUILTIN
818
819// PSTL configuration
820
821#if __cplusplus >= 201703L
822// This header is not installed for freestanding:
823#if __has_include(<pstl/pstl_config.h>)
824// Preserved here so we have some idea which version of upstream we've pulled in
825// #define PSTL_VERSION 9000
826
827// For now this defaults to being based on the presence of Thread Building Blocks
828# ifndef _GLIBCXX_USE_TBB_PAR_BACKEND
829# define _GLIBCXX_USE_TBB_PAR_BACKEND __has_include(<tbb/tbb.h>)
830# endif
831// This section will need some rework when a new (default) backend type is added
832# if _GLIBCXX_USE_TBB_PAR_BACKEND
833# define _PSTL_PAR_BACKEND_TBB
834# else
835# define _PSTL_PAR_BACKEND_SERIAL
836# endif
837
838# define _PSTL_ASSERT(_Condition) __glibcxx_assert(_Condition)
839# define _PSTL_ASSERT_MSG(_Condition, _Message) __glibcxx_assert(_Condition)
840
841#include <pstl/pstl_config.h>
842#endif // __has_include
843#endif // C++17
844
845// End of prewritten config; the settings discovered at configure time follow.
846/* config.h. Generated from config.h.in by configure. */
847/* config.h.in. Generated from configure.ac by autoheader. */
848
849/* Define to 1 if you have the `acosf' function. */
850#define _GLIBCXX_HAVE_ACOSF 1
851
852/* Define to 1 if you have the `acosl' function. */
853#define _GLIBCXX_HAVE_ACOSL 1
854
855/* Define to 1 if you have the `aligned_alloc' function. */
856#define _GLIBCXX_HAVE_ALIGNED_ALLOC 1
857
858/* Define if arc4random is available in <stdlib.h>. */
859/* #undef _GLIBCXX_HAVE_ARC4RANDOM */
860
861/* Define to 1 if you have the <arpa/inet.h> header file. */
862#define _GLIBCXX_HAVE_ARPA_INET_H 1
863
864/* Define to 1 if you have the `asinf' function. */
865#define _GLIBCXX_HAVE_ASINF 1
866
867/* Define to 1 if you have the `asinl' function. */
868#define _GLIBCXX_HAVE_ASINL 1
869
870/* Define to 1 if the target assembler supports .symver directive. */
871#define _GLIBCXX_HAVE_AS_SYMVER_DIRECTIVE 1
872
873/* Define to 1 if you have the `atan2f' function. */
874#define _GLIBCXX_HAVE_ATAN2F 1
875
876/* Define to 1 if you have the `atan2l' function. */
877#define _GLIBCXX_HAVE_ATAN2L 1
878
879/* Define to 1 if you have the `atanf' function. */
880#define _GLIBCXX_HAVE_ATANF 1
881
882/* Define to 1 if you have the `atanl' function. */
883#define _GLIBCXX_HAVE_ATANL 1
884
885/* Defined if shared_ptr reference counting should use atomic operations. */
886#define _GLIBCXX_HAVE_ATOMIC_LOCK_POLICY 1
887
888/* Define to 1 if you have the `at_quick_exit' function. */
889#define _GLIBCXX_HAVE_AT_QUICK_EXIT 1
890
891/* Define to 1 if the target assembler supports thread-local storage. */
892/* #undef _GLIBCXX_HAVE_CC_TLS */
893
894/* Define to 1 if you have the `ceilf' function. */
895#define _GLIBCXX_HAVE_CEILF 1
896
897/* Define to 1 if you have the `ceill' function. */
898#define _GLIBCXX_HAVE_CEILL 1
899
900/* Define to 1 if you have the <complex.h> header file. */
901#define _GLIBCXX_HAVE_COMPLEX_H 1
902
903/* Define to 1 if you have the `cosf' function. */
904#define _GLIBCXX_HAVE_COSF 1
905
906/* Define to 1 if you have the `coshf' function. */
907#define _GLIBCXX_HAVE_COSHF 1
908
909/* Define to 1 if you have the `coshl' function. */
910#define _GLIBCXX_HAVE_COSHL 1
911
912/* Define to 1 if you have the `cosl' function. */
913#define _GLIBCXX_HAVE_COSL 1
914
915/* Define to 1 if you have the declaration of `strnlen', and to 0 if you
916 don't. */
917#define _GLIBCXX_HAVE_DECL_STRNLEN 1
918
919/* Define to 1 if you have the <dirent.h> header file. */
920#define _GLIBCXX_HAVE_DIRENT_H 1
921
922/* Define if dirfd is available in <dirent.h>. */
923#define _GLIBCXX_HAVE_DIRFD 1
924
925/* Define to 1 if you have the <dlfcn.h> header file. */
926#define _GLIBCXX_HAVE_DLFCN_H 1
927
928/* Define to 1 if you have the <endian.h> header file. */
929#define _GLIBCXX_HAVE_ENDIAN_H 1
930
931/* Define to 1 if GCC 4.6 supported std::exception_ptr for the target */
932#define _GLIBCXX_HAVE_EXCEPTION_PTR_SINCE_GCC46 1
933
934/* Define to 1 if you have the <execinfo.h> header file. */
935#define _GLIBCXX_HAVE_EXECINFO_H 1
936
937/* Define to 1 if you have the `expf' function. */
938#define _GLIBCXX_HAVE_EXPF 1
939
940/* Define to 1 if you have the `expl' function. */
941#define _GLIBCXX_HAVE_EXPL 1
942
943/* Define to 1 if you have the `fabsf' function. */
944#define _GLIBCXX_HAVE_FABSF 1
945
946/* Define to 1 if you have the `fabsl' function. */
947#define _GLIBCXX_HAVE_FABSL 1
948
949/* Define to 1 if you have the <fcntl.h> header file. */
950#define _GLIBCXX_HAVE_FCNTL_H 1
951
952/* Define if fdopendir is available in <dirent.h>. */
953#define _GLIBCXX_HAVE_FDOPENDIR 1
954
955/* Define to 1 if you have the <fenv.h> header file. */
956#define _GLIBCXX_HAVE_FENV_H 1
957
958/* Define to 1 if you have the `finite' function. */
959#define _GLIBCXX_HAVE_FINITE 1
960
961/* Define to 1 if you have the `finitef' function. */
962#define _GLIBCXX_HAVE_FINITEF 1
963
964/* Define to 1 if you have the `finitel' function. */
965#define _GLIBCXX_HAVE_FINITEL 1
966
967/* Define to 1 if you have the <float.h> header file. */
968#define _GLIBCXX_HAVE_FLOAT_H 1
969
970/* Define to 1 if you have the `floorf' function. */
971#define _GLIBCXX_HAVE_FLOORF 1
972
973/* Define to 1 if you have the `floorl' function. */
974#define _GLIBCXX_HAVE_FLOORL 1
975
976/* Define to 1 if you have the `fmodf' function. */
977#define _GLIBCXX_HAVE_FMODF 1
978
979/* Define to 1 if you have the `fmodl' function. */
980#define _GLIBCXX_HAVE_FMODL 1
981
982/* Define to 1 if you have the `fpclass' function. */
983/* #undef _GLIBCXX_HAVE_FPCLASS */
984
985/* Define to 1 if you have the <fp.h> header file. */
986/* #undef _GLIBCXX_HAVE_FP_H */
987
988/* Define to 1 if you have the `frexpf' function. */
989#define _GLIBCXX_HAVE_FREXPF 1
990
991/* Define to 1 if you have the `frexpl' function. */
992#define _GLIBCXX_HAVE_FREXPL 1
993
994/* Define if getentropy is available in <unistd.h>. */
995#define _GLIBCXX_HAVE_GETENTROPY 1
996
997/* Define if _Unwind_GetIPInfo is available. */
998#define _GLIBCXX_HAVE_GETIPINFO 1
999
1000/* Define if gets is available in <stdio.h> before C++14. */
1001#define _GLIBCXX_HAVE_GETS 1
1002
1003/* Define to 1 if you have the `hypot' function. */
1004#define _GLIBCXX_HAVE_HYPOT 1
1005
1006/* Define to 1 if you have the `hypotf' function. */
1007#define _GLIBCXX_HAVE_HYPOTF 1
1008
1009/* Define to 1 if you have the `hypotl' function. */
1010#define _GLIBCXX_HAVE_HYPOTL 1
1011
1012/* Define if you have the iconv() function. */
1013#define _GLIBCXX_HAVE_ICONV 1
1014
1015/* Define to 1 if you have the <ieeefp.h> header file. */
1016/* #undef _GLIBCXX_HAVE_IEEEFP_H */
1017
1018/* Define to 1 if you have the <inttypes.h> header file. */
1019#define _GLIBCXX_HAVE_INTTYPES_H 1
1020
1021/* Define to 1 if you have the `isinf' function. */
1022/* #undef _GLIBCXX_HAVE_ISINF */
1023
1024/* Define to 1 if you have the `isinff' function. */
1025#define _GLIBCXX_HAVE_ISINFF 1
1026
1027/* Define to 1 if you have the `isinfl' function. */
1028#define _GLIBCXX_HAVE_ISINFL 1
1029
1030/* Define to 1 if you have the `isnan' function. */
1031/* #undef _GLIBCXX_HAVE_ISNAN */
1032
1033/* Define to 1 if you have the `isnanf' function. */
1034#define _GLIBCXX_HAVE_ISNANF 1
1035
1036/* Define to 1 if you have the `isnanl' function. */
1037#define _GLIBCXX_HAVE_ISNANL 1
1038
1039/* Defined if iswblank exists. */
1040#define _GLIBCXX_HAVE_ISWBLANK 1
1041
1042/* Define if LC_MESSAGES is available in <locale.h>. */
1043#define _GLIBCXX_HAVE_LC_MESSAGES 1
1044
1045/* Define to 1 if you have the `ldexpf' function. */
1046#define _GLIBCXX_HAVE_LDEXPF 1
1047
1048/* Define to 1 if you have the `ldexpl' function. */
1049#define _GLIBCXX_HAVE_LDEXPL 1
1050
1051/* Define to 1 if you have the <libintl.h> header file. */
1052#define _GLIBCXX_HAVE_LIBINTL_H 1
1053
1054/* Only used in build directory testsuite_hooks.h. */
1055#define _GLIBCXX_HAVE_LIMIT_AS 1
1056
1057/* Only used in build directory testsuite_hooks.h. */
1058#define _GLIBCXX_HAVE_LIMIT_DATA 1
1059
1060/* Only used in build directory testsuite_hooks.h. */
1061#define _GLIBCXX_HAVE_LIMIT_FSIZE 1
1062
1063/* Only used in build directory testsuite_hooks.h. */
1064#define _GLIBCXX_HAVE_LIMIT_RSS 1
1065
1066/* Only used in build directory testsuite_hooks.h. */
1067#define _GLIBCXX_HAVE_LIMIT_VMEM 0
1068
1069/* Define if link is available in <unistd.h>. */
1070#define _GLIBCXX_HAVE_LINK 1
1071
1072/* Define to 1 if you have the <link.h> header file. */
1073#define _GLIBCXX_HAVE_LINK_H 1
1074
1075/* Define if futex syscall is available. */
1076#define _GLIBCXX_HAVE_LINUX_FUTEX 1
1077
1078/* Define to 1 if you have the <linux/random.h> header file. */
1079#define _GLIBCXX_HAVE_LINUX_RANDOM_H 1
1080
1081/* Define to 1 if you have the <linux/types.h> header file. */
1082#define _GLIBCXX_HAVE_LINUX_TYPES_H 1
1083
1084/* Define to 1 if you have the <locale.h> header file. */
1085#define _GLIBCXX_HAVE_LOCALE_H 1
1086
1087/* Define to 1 if you have the `log10f' function. */
1088#define _GLIBCXX_HAVE_LOG10F 1
1089
1090/* Define to 1 if you have the `log10l' function. */
1091#define _GLIBCXX_HAVE_LOG10L 1
1092
1093/* Define to 1 if you have the `logf' function. */
1094#define _GLIBCXX_HAVE_LOGF 1
1095
1096/* Define to 1 if you have the `logl' function. */
1097#define _GLIBCXX_HAVE_LOGL 1
1098
1099/* Define to 1 if you have the <machine/endian.h> header file. */
1100/* #undef _GLIBCXX_HAVE_MACHINE_ENDIAN_H */
1101
1102/* Define to 1 if you have the <machine/param.h> header file. */
1103/* #undef _GLIBCXX_HAVE_MACHINE_PARAM_H */
1104
1105/* Define if mbstate_t exists in wchar.h. */
1106#define _GLIBCXX_HAVE_MBSTATE_T 1
1107
1108/* Define to 1 if you have the `memalign' function. */
1109#define _GLIBCXX_HAVE_MEMALIGN 1
1110
1111/* Define to 1 if you have the <memory.h> header file. */
1112#define _GLIBCXX_HAVE_MEMORY_H 1
1113
1114/* Define to 1 if you have the `modf' function. */
1115#define _GLIBCXX_HAVE_MODF 1
1116
1117/* Define to 1 if you have the `modff' function. */
1118#define _GLIBCXX_HAVE_MODFF 1
1119
1120/* Define to 1 if you have the `modfl' function. */
1121#define _GLIBCXX_HAVE_MODFL 1
1122
1123/* Define to 1 if you have the <nan.h> header file. */
1124/* #undef _GLIBCXX_HAVE_NAN_H */
1125
1126/* Define to 1 if you have the <netdb.h> header file. */
1127#define _GLIBCXX_HAVE_NETDB_H 1
1128
1129/* Define to 1 if you have the <netinet/in.h> header file. */
1130#define _GLIBCXX_HAVE_NETINET_IN_H 1
1131
1132/* Define to 1 if you have the <netinet/tcp.h> header file. */
1133#define _GLIBCXX_HAVE_NETINET_TCP_H 1
1134
1135/* Define if <math.h> defines obsolete isinf function. */
1136/* #undef _GLIBCXX_HAVE_OBSOLETE_ISINF */
1137
1138/* Define if <math.h> defines obsolete isnan function. */
1139/* #undef _GLIBCXX_HAVE_OBSOLETE_ISNAN */
1140
1141/* Define if poll is available in <poll.h>. */
1142#define _GLIBCXX_HAVE_POLL 1
1143
1144/* Define to 1 if you have the <poll.h> header file. */
1145#define _GLIBCXX_HAVE_POLL_H 1
1146
1147/* Define to 1 if you have the `posix_memalign' function. */
1148#define _GLIBCXX_HAVE_POSIX_MEMALIGN 1
1149
1150/* Define to 1 if POSIX Semaphores with sem_timedwait are available in
1151 <semaphore.h>. */
1152#define _GLIBCXX_HAVE_POSIX_SEMAPHORE 1
1153
1154/* Define to 1 if you have the `powf' function. */
1155#define _GLIBCXX_HAVE_POWF 1
1156
1157/* Define to 1 if you have the `powl' function. */
1158#define _GLIBCXX_HAVE_POWL 1
1159
1160/* Define to 1 if you have the `qfpclass' function. */
1161/* #undef _GLIBCXX_HAVE_QFPCLASS */
1162
1163/* Define to 1 if you have the `quick_exit' function. */
1164#define _GLIBCXX_HAVE_QUICK_EXIT 1
1165
1166/* Define if readlink is available in <unistd.h>. */
1167#define _GLIBCXX_HAVE_READLINK 1
1168
1169/* Define to 1 if you have the `secure_getenv' function. */
1170#define _GLIBCXX_HAVE_SECURE_GETENV 1
1171
1172/* Define to 1 if you have the `setenv' function. */
1173#define _GLIBCXX_HAVE_SETENV 1
1174
1175/* Define to 1 if you have the `sincos' function. */
1176#define _GLIBCXX_HAVE_SINCOS 1
1177
1178/* Define to 1 if you have the `sincosf' function. */
1179#define _GLIBCXX_HAVE_SINCOSF 1
1180
1181/* Define to 1 if you have the `sincosl' function. */
1182#define _GLIBCXX_HAVE_SINCOSL 1
1183
1184/* Define to 1 if you have the `sinf' function. */
1185#define _GLIBCXX_HAVE_SINF 1
1186
1187/* Define to 1 if you have the `sinhf' function. */
1188#define _GLIBCXX_HAVE_SINHF 1
1189
1190/* Define to 1 if you have the `sinhl' function. */
1191#define _GLIBCXX_HAVE_SINHL 1
1192
1193/* Define to 1 if you have the `sinl' function. */
1194#define _GLIBCXX_HAVE_SINL 1
1195
1196/* Defined if sleep exists. */
1197/* #undef _GLIBCXX_HAVE_SLEEP */
1198
1199/* Define to 1 if you have the `sockatmark' function. */
1200#define _GLIBCXX_HAVE_SOCKATMARK 1
1201
1202/* Define to 1 if you have the `sqrtf' function. */
1203#define _GLIBCXX_HAVE_SQRTF 1
1204
1205/* Define to 1 if you have the `sqrtl' function. */
1206#define _GLIBCXX_HAVE_SQRTL 1
1207
1208/* Define if the <stacktrace> header is supported. */
1209/* #undef _GLIBCXX_HAVE_STACKTRACE */
1210
1211/* Define to 1 if you have the <stdalign.h> header file. */
1212#define _GLIBCXX_HAVE_STDALIGN_H 1
1213
1214/* Define to 1 if you have the <stdbool.h> header file. */
1215#define _GLIBCXX_HAVE_STDBOOL_H 1
1216
1217/* Define to 1 if you have the <stdint.h> header file. */
1218#define _GLIBCXX_HAVE_STDINT_H 1
1219
1220/* Define to 1 if you have the <stdlib.h> header file. */
1221#define _GLIBCXX_HAVE_STDLIB_H 1
1222
1223/* Define if strerror_l is available in <string.h>. */
1224#define _GLIBCXX_HAVE_STRERROR_L 1
1225
1226/* Define if strerror_r is available in <string.h>. */
1227#define _GLIBCXX_HAVE_STRERROR_R 1
1228
1229/* Define to 1 if you have the <strings.h> header file. */
1230#define _GLIBCXX_HAVE_STRINGS_H 1
1231
1232/* Define to 1 if you have the <string.h> header file. */
1233#define _GLIBCXX_HAVE_STRING_H 1
1234
1235/* Define to 1 if you have the `strtof' function. */
1236#define _GLIBCXX_HAVE_STRTOF 1
1237
1238/* Define to 1 if you have the `strtold' function. */
1239#define _GLIBCXX_HAVE_STRTOLD 1
1240
1241/* Define to 1 if `d_type' is a member of `struct dirent'. */
1242#define _GLIBCXX_HAVE_STRUCT_DIRENT_D_TYPE 1
1243
1244/* Define if strxfrm_l is available in <string.h>. */
1245#define _GLIBCXX_HAVE_STRXFRM_L 1
1246
1247/* Define if symlink is available in <unistd.h>. */
1248#define _GLIBCXX_HAVE_SYMLINK 1
1249
1250/* Define to 1 if the target runtime linker supports binding the same symbol
1251 to different versions. */
1252#define _GLIBCXX_HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT 1
1253
1254/* Define to 1 if you have the <sys/filio.h> header file. */
1255/* #undef _GLIBCXX_HAVE_SYS_FILIO_H */
1256
1257/* Define to 1 if you have the <sys/ioctl.h> header file. */
1258#define _GLIBCXX_HAVE_SYS_IOCTL_H 1
1259
1260/* Define to 1 if you have the <sys/ipc.h> header file. */
1261#define _GLIBCXX_HAVE_SYS_IPC_H 1
1262
1263/* Define to 1 if you have the <sys/isa_defs.h> header file. */
1264/* #undef _GLIBCXX_HAVE_SYS_ISA_DEFS_H */
1265
1266/* Define to 1 if you have the <sys/machine.h> header file. */
1267/* #undef _GLIBCXX_HAVE_SYS_MACHINE_H */
1268
1269/* Define to 1 if you have the <sys/param.h> header file. */
1270#define _GLIBCXX_HAVE_SYS_PARAM_H 1
1271
1272/* Define to 1 if you have the <sys/resource.h> header file. */
1273#define _GLIBCXX_HAVE_SYS_RESOURCE_H 1
1274
1275/* Define to 1 if you have a suitable <sys/sdt.h> header file */
1276#define _GLIBCXX_HAVE_SYS_SDT_H 1
1277
1278/* Define to 1 if you have the <sys/sem.h> header file. */
1279#define _GLIBCXX_HAVE_SYS_SEM_H 1
1280
1281/* Define to 1 if you have the <sys/socket.h> header file. */
1282#define _GLIBCXX_HAVE_SYS_SOCKET_H 1
1283
1284/* Define to 1 if you have the <sys/statvfs.h> header file. */
1285#define _GLIBCXX_HAVE_SYS_STATVFS_H 1
1286
1287/* Define to 1 if you have the <sys/stat.h> header file. */
1288#define _GLIBCXX_HAVE_SYS_STAT_H 1
1289
1290/* Define to 1 if you have the <sys/sysinfo.h> header file. */
1291#define _GLIBCXX_HAVE_SYS_SYSINFO_H 1
1292
1293/* Define to 1 if you have the <sys/time.h> header file. */
1294#define _GLIBCXX_HAVE_SYS_TIME_H 1
1295
1296/* Define to 1 if you have the <sys/types.h> header file. */
1297#define _GLIBCXX_HAVE_SYS_TYPES_H 1
1298
1299/* Define to 1 if you have the <sys/uio.h> header file. */
1300#define _GLIBCXX_HAVE_SYS_UIO_H 1
1301
1302/* Define if S_IFREG is available in <sys/stat.h>. */
1303/* #undef _GLIBCXX_HAVE_S_IFREG */
1304
1305/* Define if S_ISREG is available in <sys/stat.h>. */
1306#define _GLIBCXX_HAVE_S_ISREG 1
1307
1308/* Define to 1 if you have the `tanf' function. */
1309#define _GLIBCXX_HAVE_TANF 1
1310
1311/* Define to 1 if you have the `tanhf' function. */
1312#define _GLIBCXX_HAVE_TANHF 1
1313
1314/* Define to 1 if you have the `tanhl' function. */
1315#define _GLIBCXX_HAVE_TANHL 1
1316
1317/* Define to 1 if you have the `tanl' function. */
1318#define _GLIBCXX_HAVE_TANL 1
1319
1320/* Define to 1 if you have the <tgmath.h> header file. */
1321#define _GLIBCXX_HAVE_TGMATH_H 1
1322
1323/* Define to 1 if you have the `timespec_get' function. */
1324#define _GLIBCXX_HAVE_TIMESPEC_GET 1
1325
1326/* Define to 1 if the target supports thread-local storage. */
1327#define _GLIBCXX_HAVE_TLS 1
1328
1329/* Define if truncate is available in <unistd.h>. */
1330#define _GLIBCXX_HAVE_TRUNCATE 1
1331
1332/* Define to 1 if you have the <uchar.h> header file. */
1333#define _GLIBCXX_HAVE_UCHAR_H 1
1334
1335/* Define to 1 if you have the <unistd.h> header file. */
1336#define _GLIBCXX_HAVE_UNISTD_H 1
1337
1338/* Define if unlinkat is available in <fcntl.h>. */
1339#define _GLIBCXX_HAVE_UNLINKAT 1
1340
1341/* Define to 1 if you have the `uselocale' function. */
1342#define _GLIBCXX_HAVE_USELOCALE 1
1343
1344/* Defined if usleep exists. */
1345/* #undef _GLIBCXX_HAVE_USLEEP */
1346
1347/* Define to 1 if you have the <utime.h> header file. */
1348#define _GLIBCXX_HAVE_UTIME_H 1
1349
1350/* Defined if vfwscanf exists. */
1351#define _GLIBCXX_HAVE_VFWSCANF 1
1352
1353/* Defined if vswscanf exists. */
1354#define _GLIBCXX_HAVE_VSWSCANF 1
1355
1356/* Defined if vwscanf exists. */
1357#define _GLIBCXX_HAVE_VWSCANF 1
1358
1359/* Define to 1 if you have the <wchar.h> header file. */
1360#define _GLIBCXX_HAVE_WCHAR_H 1
1361
1362/* Defined if wcstof exists. */
1363#define _GLIBCXX_HAVE_WCSTOF 1
1364
1365/* Define to 1 if you have the <wctype.h> header file. */
1366#define _GLIBCXX_HAVE_WCTYPE_H 1
1367
1368/* Defined if Sleep exists. */
1369/* #undef _GLIBCXX_HAVE_WIN32_SLEEP */
1370
1371/* Define if writev is available in <sys/uio.h>. */
1372#define _GLIBCXX_HAVE_WRITEV 1
1373
1374/* Define to 1 if you have the <xlocale.h> header file. */
1375/* #undef _GLIBCXX_HAVE_XLOCALE_H */
1376
1377/* Define to 1 if you have the `_acosf' function. */
1378/* #undef _GLIBCXX_HAVE__ACOSF */
1379
1380/* Define to 1 if you have the `_acosl' function. */
1381/* #undef _GLIBCXX_HAVE__ACOSL */
1382
1383/* Define to 1 if you have the `_aligned_malloc' function. */
1384/* #undef _GLIBCXX_HAVE__ALIGNED_MALLOC */
1385
1386/* Define to 1 if you have the `_asinf' function. */
1387/* #undef _GLIBCXX_HAVE__ASINF */
1388
1389/* Define to 1 if you have the `_asinl' function. */
1390/* #undef _GLIBCXX_HAVE__ASINL */
1391
1392/* Define to 1 if you have the `_atan2f' function. */
1393/* #undef _GLIBCXX_HAVE__ATAN2F */
1394
1395/* Define to 1 if you have the `_atan2l' function. */
1396/* #undef _GLIBCXX_HAVE__ATAN2L */
1397
1398/* Define to 1 if you have the `_atanf' function. */
1399/* #undef _GLIBCXX_HAVE__ATANF */
1400
1401/* Define to 1 if you have the `_atanl' function. */
1402/* #undef _GLIBCXX_HAVE__ATANL */
1403
1404/* Define to 1 if you have the `_ceilf' function. */
1405/* #undef _GLIBCXX_HAVE__CEILF */
1406
1407/* Define to 1 if you have the `_ceill' function. */
1408/* #undef _GLIBCXX_HAVE__CEILL */
1409
1410/* Define to 1 if you have the `_cosf' function. */
1411/* #undef _GLIBCXX_HAVE__COSF */
1412
1413/* Define to 1 if you have the `_coshf' function. */
1414/* #undef _GLIBCXX_HAVE__COSHF */
1415
1416/* Define to 1 if you have the `_coshl' function. */
1417/* #undef _GLIBCXX_HAVE__COSHL */
1418
1419/* Define to 1 if you have the `_cosl' function. */
1420/* #undef _GLIBCXX_HAVE__COSL */
1421
1422/* Define to 1 if you have the `_expf' function. */
1423/* #undef _GLIBCXX_HAVE__EXPF */
1424
1425/* Define to 1 if you have the `_expl' function. */
1426/* #undef _GLIBCXX_HAVE__EXPL */
1427
1428/* Define to 1 if you have the `_fabsf' function. */
1429/* #undef _GLIBCXX_HAVE__FABSF */
1430
1431/* Define to 1 if you have the `_fabsl' function. */
1432/* #undef _GLIBCXX_HAVE__FABSL */
1433
1434/* Define to 1 if you have the `_finite' function. */
1435/* #undef _GLIBCXX_HAVE__FINITE */
1436
1437/* Define to 1 if you have the `_finitef' function. */
1438/* #undef _GLIBCXX_HAVE__FINITEF */
1439
1440/* Define to 1 if you have the `_finitel' function. */
1441/* #undef _GLIBCXX_HAVE__FINITEL */
1442
1443/* Define to 1 if you have the `_floorf' function. */
1444/* #undef _GLIBCXX_HAVE__FLOORF */
1445
1446/* Define to 1 if you have the `_floorl' function. */
1447/* #undef _GLIBCXX_HAVE__FLOORL */
1448
1449/* Define to 1 if you have the `_fmodf' function. */
1450/* #undef _GLIBCXX_HAVE__FMODF */
1451
1452/* Define to 1 if you have the `_fmodl' function. */
1453/* #undef _GLIBCXX_HAVE__FMODL */
1454
1455/* Define to 1 if you have the `_fpclass' function. */
1456/* #undef _GLIBCXX_HAVE__FPCLASS */
1457
1458/* Define to 1 if you have the `_frexpf' function. */
1459/* #undef _GLIBCXX_HAVE__FREXPF */
1460
1461/* Define to 1 if you have the `_frexpl' function. */
1462/* #undef _GLIBCXX_HAVE__FREXPL */
1463
1464/* Define to 1 if you have the `_hypot' function. */
1465/* #undef _GLIBCXX_HAVE__HYPOT */
1466
1467/* Define to 1 if you have the `_hypotf' function. */
1468/* #undef _GLIBCXX_HAVE__HYPOTF */
1469
1470/* Define to 1 if you have the `_hypotl' function. */
1471/* #undef _GLIBCXX_HAVE__HYPOTL */
1472
1473/* Define to 1 if you have the `_isinf' function. */
1474/* #undef _GLIBCXX_HAVE__ISINF */
1475
1476/* Define to 1 if you have the `_isinff' function. */
1477/* #undef _GLIBCXX_HAVE__ISINFF */
1478
1479/* Define to 1 if you have the `_isinfl' function. */
1480/* #undef _GLIBCXX_HAVE__ISINFL */
1481
1482/* Define to 1 if you have the `_isnan' function. */
1483/* #undef _GLIBCXX_HAVE__ISNAN */
1484
1485/* Define to 1 if you have the `_isnanf' function. */
1486/* #undef _GLIBCXX_HAVE__ISNANF */
1487
1488/* Define to 1 if you have the `_isnanl' function. */
1489/* #undef _GLIBCXX_HAVE__ISNANL */
1490
1491/* Define to 1 if you have the `_ldexpf' function. */
1492/* #undef _GLIBCXX_HAVE__LDEXPF */
1493
1494/* Define to 1 if you have the `_ldexpl' function. */
1495/* #undef _GLIBCXX_HAVE__LDEXPL */
1496
1497/* Define to 1 if you have the `_log10f' function. */
1498/* #undef _GLIBCXX_HAVE__LOG10F */
1499
1500/* Define to 1 if you have the `_log10l' function. */
1501/* #undef _GLIBCXX_HAVE__LOG10L */
1502
1503/* Define to 1 if you have the `_logf' function. */
1504/* #undef _GLIBCXX_HAVE__LOGF */
1505
1506/* Define to 1 if you have the `_logl' function. */
1507/* #undef _GLIBCXX_HAVE__LOGL */
1508
1509/* Define to 1 if you have the `_modf' function. */
1510/* #undef _GLIBCXX_HAVE__MODF */
1511
1512/* Define to 1 if you have the `_modff' function. */
1513/* #undef _GLIBCXX_HAVE__MODFF */
1514
1515/* Define to 1 if you have the `_modfl' function. */
1516/* #undef _GLIBCXX_HAVE__MODFL */
1517
1518/* Define to 1 if you have the `_powf' function. */
1519/* #undef _GLIBCXX_HAVE__POWF */
1520
1521/* Define to 1 if you have the `_powl' function. */
1522/* #undef _GLIBCXX_HAVE__POWL */
1523
1524/* Define to 1 if you have the `_qfpclass' function. */
1525/* #undef _GLIBCXX_HAVE__QFPCLASS */
1526
1527/* Define to 1 if you have the `_sincos' function. */
1528/* #undef _GLIBCXX_HAVE__SINCOS */
1529
1530/* Define to 1 if you have the `_sincosf' function. */
1531/* #undef _GLIBCXX_HAVE__SINCOSF */
1532
1533/* Define to 1 if you have the `_sincosl' function. */
1534/* #undef _GLIBCXX_HAVE__SINCOSL */
1535
1536/* Define to 1 if you have the `_sinf' function. */
1537/* #undef _GLIBCXX_HAVE__SINF */
1538
1539/* Define to 1 if you have the `_sinhf' function. */
1540/* #undef _GLIBCXX_HAVE__SINHF */
1541
1542/* Define to 1 if you have the `_sinhl' function. */
1543/* #undef _GLIBCXX_HAVE__SINHL */
1544
1545/* Define to 1 if you have the `_sinl' function. */
1546/* #undef _GLIBCXX_HAVE__SINL */
1547
1548/* Define to 1 if you have the `_sqrtf' function. */
1549/* #undef _GLIBCXX_HAVE__SQRTF */
1550
1551/* Define to 1 if you have the `_sqrtl' function. */
1552/* #undef _GLIBCXX_HAVE__SQRTL */
1553
1554/* Define to 1 if you have the `_tanf' function. */
1555/* #undef _GLIBCXX_HAVE__TANF */
1556
1557/* Define to 1 if you have the `_tanhf' function. */
1558/* #undef _GLIBCXX_HAVE__TANHF */
1559
1560/* Define to 1 if you have the `_tanhl' function. */
1561/* #undef _GLIBCXX_HAVE__TANHL */
1562
1563/* Define to 1 if you have the `_tanl' function. */
1564/* #undef _GLIBCXX_HAVE__TANL */
1565
1566/* Define to 1 if you have the `_wfopen' function. */
1567/* #undef _GLIBCXX_HAVE__WFOPEN */
1568
1569/* Define to 1 if you have the `__cxa_thread_atexit' function. */
1570/* #undef _GLIBCXX_HAVE___CXA_THREAD_ATEXIT */
1571
1572/* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
1573#define _GLIBCXX_HAVE___CXA_THREAD_ATEXIT_IMPL 1
1574
1575/* Define as const if the declaration of iconv() needs const. */
1576#define _GLIBCXX_ICONV_CONST
1577
1578/* Define to the sub-directory in which libtool stores uninstalled libraries.
1579 */
1580#define _GLIBCXX_LT_OBJDIR ".libs/"
1581
1582/* Name of package */
1583/* #undef _GLIBCXX_PACKAGE */
1584
1585/* Define to the address where bug reports for this package should be sent. */
1586#define _GLIBCXX_PACKAGE_BUGREPORT ""
1587
1588/* Define to the full name of this package. */
1589#define _GLIBCXX_PACKAGE_NAME "package-unused"
1590
1591/* Define to the full name and version of this package. */
1592#define _GLIBCXX_PACKAGE_STRING "package-unused version-unused"
1593
1594/* Define to the one symbol short name of this package. */
1595#define _GLIBCXX_PACKAGE_TARNAME "libstdc++"
1596
1597/* Define to the home page for this package. */
1598#define _GLIBCXX_PACKAGE_URL ""
1599
1600/* Define to the version of this package. */
1601#define _GLIBCXX_PACKAGE__GLIBCXX_VERSION "version-unused"
1602
1603/* The size of `char', as computed by sizeof. */
1604/* #undef SIZEOF_CHAR */
1605
1606/* The size of `int', as computed by sizeof. */
1607/* #undef SIZEOF_INT */
1608
1609/* The size of `long', as computed by sizeof. */
1610/* #undef SIZEOF_LONG */
1611
1612/* The size of `short', as computed by sizeof. */
1613/* #undef SIZEOF_SHORT */
1614
1615/* The size of `void *', as computed by sizeof. */
1616/* #undef SIZEOF_VOID_P */
1617
1618/* Define to 1 if you have the ANSI C header files. */
1619#define _GLIBCXX_STDC_HEADERS 1
1620
1621/* Version number of package */
1622/* #undef _GLIBCXX_VERSION */
1623
1624/* Enable large inode numbers on Mac OS X 10.5. */
1625#ifndef _GLIBCXX_DARWIN_USE_64_BIT_INODE
1626# define _GLIBCXX_DARWIN_USE_64_BIT_INODE 1
1627#endif
1628
1629/* Number of bits in a file offset, on hosts where this is settable. */
1630/* #undef _GLIBCXX_FILE_OFFSET_BITS */
1631
1632/* Define if C99 functions in <complex.h> should be used in <complex> for
1633 C++11. Using compiler builtins for these functions requires corresponding
1634 C99 library functions to be present. */
1635#define _GLIBCXX11_USE_C99_COMPLEX 1
1636
1637/* Define if C99 functions or macros in <math.h> should be imported in <cmath>
1638 in namespace std for C++11. */
1639#define _GLIBCXX11_USE_C99_MATH 1
1640
1641/* Define if C99 functions or macros in <stdio.h> should be imported in
1642 <cstdio> in namespace std for C++11. */
1643#define _GLIBCXX11_USE_C99_STDIO 1
1644
1645/* Define if C99 functions or macros in <stdlib.h> should be imported in
1646 <cstdlib> in namespace std for C++11. */
1647#define _GLIBCXX11_USE_C99_STDLIB 1
1648
1649/* Define if C99 functions or macros in <wchar.h> should be imported in
1650 <cwchar> in namespace std for C++11. */
1651#define _GLIBCXX11_USE_C99_WCHAR 1
1652
1653/* Define if C99 functions in <complex.h> should be used in <complex> for
1654 C++98. Using compiler builtins for these functions requires corresponding
1655 C99 library functions to be present. */
1656#define _GLIBCXX98_USE_C99_COMPLEX 1
1657
1658/* Define if C99 functions or macros in <math.h> should be imported in <cmath>
1659 in namespace std for C++98. */
1660#define _GLIBCXX98_USE_C99_MATH 1
1661
1662/* Define if C99 functions or macros in <stdio.h> should be imported in
1663 <cstdio> in namespace std for C++98. */
1664#define _GLIBCXX98_USE_C99_STDIO 1
1665
1666/* Define if C99 functions or macros in <stdlib.h> should be imported in
1667 <cstdlib> in namespace std for C++98. */
1668#define _GLIBCXX98_USE_C99_STDLIB 1
1669
1670/* Define if C99 functions or macros in <wchar.h> should be imported in
1671 <cwchar> in namespace std for C++98. */
1672#define _GLIBCXX98_USE_C99_WCHAR 1
1673
1674/* Define if the compiler supports C++11 atomics. */
1675#define _GLIBCXX_ATOMIC_BUILTINS 1
1676
1677/* Define to use concept checking code from the boost libraries. */
1678/* #undef _GLIBCXX_CONCEPT_CHECKS */
1679
1680/* Define to 1 if a fully dynamic basic_string is wanted, 0 to disable,
1681 undefined for platform defaults */
1682#define _GLIBCXX_FULLY_DYNAMIC_STRING 0
1683
1684/* Define if gthreads library is available. */
1685#define _GLIBCXX_HAS_GTHREADS 1
1686
1687/* Define to 1 if a full hosted library is built, or 0 if freestanding. */
1688#define _GLIBCXX_HOSTED 1
1689
1690/* Define if compatibility should be provided for alternative 128-bit long
1691 double formats. */
1692
1693/* Define if compatibility should be provided for -mlong-double-64. */
1694
1695/* Define to the letter to which size_t is mangled. */
1696#define _GLIBCXX_MANGLE_SIZE_T m
1697
1698/* Define if C99 llrint and llround functions are missing from <math.h>. */
1699/* #undef _GLIBCXX_NO_C99_ROUNDING_FUNCS */
1700
1701/* Defined if no way to sleep is available. */
1702/* #undef _GLIBCXX_NO_SLEEP */
1703
1704/* Define if ptrdiff_t is int. */
1705/* #undef _GLIBCXX_PTRDIFF_T_IS_INT */
1706
1707/* Define if using setrlimit to set resource limits during "make check" */
1708#define _GLIBCXX_RES_LIMITS 1
1709
1710/* Define if size_t is unsigned int. */
1711/* #undef _GLIBCXX_SIZE_T_IS_UINT */
1712
1713/* Define to the value of the EOF integer constant. */
1714#define _GLIBCXX_STDIO_EOF -1
1715
1716/* Define to the value of the SEEK_CUR integer constant. */
1717#define _GLIBCXX_STDIO_SEEK_CUR 1
1718
1719/* Define to the value of the SEEK_END integer constant. */
1720#define _GLIBCXX_STDIO_SEEK_END 2
1721
1722/* Define to use symbol versioning in the shared library. */
1723#define _GLIBCXX_SYMVER 1
1724
1725/* Define to use darwin versioning in the shared library. */
1726/* #undef _GLIBCXX_SYMVER_DARWIN */
1727
1728/* Define to use GNU versioning in the shared library. */
1729#define _GLIBCXX_SYMVER_GNU 1
1730
1731/* Define to use GNU namespace versioning in the shared library. */
1732/* #undef _GLIBCXX_SYMVER_GNU_NAMESPACE */
1733
1734/* Define to use Sun versioning in the shared library. */
1735/* #undef _GLIBCXX_SYMVER_SUN */
1736
1737/* Define if C11 functions in <uchar.h> should be imported into namespace std
1738 in <cuchar>. */
1739#define _GLIBCXX_USE_C11_UCHAR_CXX11 1
1740
1741/* Define if C99 functions or macros from <wchar.h>, <math.h>, <complex.h>,
1742 <stdio.h>, and <stdlib.h> can be used or exposed. */
1743#define _GLIBCXX_USE_C99 1
1744
1745/* Define if C99 functions in <complex.h> should be used in <tr1/complex>.
1746 Using compiler builtins for these functions requires corresponding C99
1747 library functions to be present. */
1748#define _GLIBCXX_USE_C99_COMPLEX_TR1 1
1749
1750/* Define if C99 functions in <ctype.h> should be imported in <tr1/cctype> in
1751 namespace std::tr1. */
1752#define _GLIBCXX_USE_C99_CTYPE_TR1 1
1753
1754/* Define if C99 functions in <fenv.h> should be imported in <tr1/cfenv> in
1755 namespace std::tr1. */
1756#define _GLIBCXX_USE_C99_FENV_TR1 1
1757
1758/* Define if C99 functions in <inttypes.h> should be imported in
1759 <tr1/cinttypes> in namespace std::tr1. */
1760#define _GLIBCXX_USE_C99_INTTYPES_TR1 1
1761
1762/* Define if wchar_t C99 functions in <inttypes.h> should be imported in
1763 <tr1/cinttypes> in namespace std::tr1. */
1764#define _GLIBCXX_USE_C99_INTTYPES_WCHAR_T_TR1 1
1765
1766/* Define if C99 functions or macros in <math.h> should be imported in
1767 <tr1/cmath> in namespace std::tr1. */
1768#define _GLIBCXX_USE_C99_MATH_TR1 1
1769
1770/* Define if C99 types in <stdint.h> should be imported in <tr1/cstdint> in
1771 namespace std::tr1. */
1772#define _GLIBCXX_USE_C99_STDINT_TR1 1
1773
1774/* Defined if clock_gettime syscall has monotonic and realtime clock support.
1775 */
1776/* #undef _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL */
1777
1778/* Defined if clock_gettime has monotonic clock support. */
1779#define _GLIBCXX_USE_CLOCK_MONOTONIC 1
1780
1781/* Defined if clock_gettime has realtime clock support. */
1782#define _GLIBCXX_USE_CLOCK_REALTIME 1
1783
1784/* Define if ISO/IEC TR 24733 decimal floating point types are supported on
1785 this host. */
1786/* #undef _GLIBCXX_USE_DECIMAL_FLOAT */
1787
1788/* Define if /dev/random and /dev/urandom are available for
1789 std::random_device. */
1790#define _GLIBCXX_USE_DEV_RANDOM 1
1791
1792/* Define if fchmod is available in <sys/stat.h>. */
1793#define _GLIBCXX_USE_FCHMOD 1
1794
1795/* Define if fchmodat is available in <sys/stat.h>. */
1796#define _GLIBCXX_USE_FCHMODAT 1
1797
1798/* Defined if gettimeofday is available. */
1799#define _GLIBCXX_USE_GETTIMEOFDAY 1
1800
1801/* Define if get_nprocs is available in <sys/sysinfo.h>. */
1802#define _GLIBCXX_USE_GET_NPROCS 1
1803
1804/* Define if LFS support is available. */
1805#define _GLIBCXX_USE_LFS 1
1806
1807/* Define if code specialized for long long should be used. */
1808#define _GLIBCXX_USE_LONG_LONG 1
1809
1810/* Define if lstat is available in <sys/stat.h>. */
1811#define _GLIBCXX_USE_LSTAT 1
1812
1813/* Defined if nanosleep is available. */
1814#define _GLIBCXX_USE_NANOSLEEP 1
1815
1816/* Define if NLS translations are to be used. */
1817#define _GLIBCXX_USE_NLS 1
1818
1819/* Define if pthreads_num_processors_np is available in <pthread.h>. */
1820/* #undef _GLIBCXX_USE_PTHREADS_NUM_PROCESSORS_NP */
1821
1822/* Define if pthread_cond_clockwait is available in <pthread.h>. */
1823#define _GLIBCXX_USE_PTHREAD_COND_CLOCKWAIT 1
1824
1825/* Define if pthread_mutex_clocklock is available in <pthread.h>. */
1826#define _GLIBCXX_USE_PTHREAD_MUTEX_CLOCKLOCK 1
1827
1828/* Define if pthread_rwlock_clockrdlock and pthread_rwlock_clockwrlock are
1829 available in <pthread.h>. */
1830#define _GLIBCXX_USE_PTHREAD_RWLOCK_CLOCKLOCK 1
1831
1832/* Define if POSIX read/write locks are available in <gthr.h>. */
1833#define _GLIBCXX_USE_PTHREAD_RWLOCK_T 1
1834
1835/* Define if /dev/random and /dev/urandom are available for the random_device
1836 of TR1 (Chapter 5.1). */
1837#define _GLIBCXX_USE_RANDOM_TR1 1
1838
1839/* Define if usable realpath is available in <stdlib.h>. */
1840#define _GLIBCXX_USE_REALPATH 1
1841
1842/* Defined if sched_yield is available. */
1843#define _GLIBCXX_USE_SCHED_YIELD 1
1844
1845/* Define if _SC_NPROCESSORS_ONLN is available in <unistd.h>. */
1846#define _GLIBCXX_USE_SC_NPROCESSORS_ONLN 1
1847
1848/* Define if _SC_NPROC_ONLN is available in <unistd.h>. */
1849/* #undef _GLIBCXX_USE_SC_NPROC_ONLN */
1850
1851/* Define if sendfile is available in <sys/sendfile.h>. */
1852#define _GLIBCXX_USE_SENDFILE 1
1853
1854/* Define to restrict std::__basic_file<> to stdio APIs. */
1855/* #undef _GLIBCXX_USE_STDIO_PURE */
1856
1857/* Define if struct stat has timespec members. */
1858#define _GLIBCXX_USE_ST_MTIM 1
1859
1860/* Define if sysctl(), CTL_HW and HW_NCPU are available in <sys/sysctl.h>. */
1861/* #undef _GLIBCXX_USE_SYSCTL_HW_NCPU */
1862
1863/* Define if obsolescent tmpnam is available in <stdio.h>. */
1864#define _GLIBCXX_USE_TMPNAM 1
1865
1866/* Define if c8rtomb and mbrtoc8 functions in <uchar.h> should be imported
1867 into namespace std in <cuchar> for C++20. */
1868/* #undef _GLIBCXX_USE_UCHAR_C8RTOMB_MBRTOC8_CXX20 */
1869
1870/* Define if c8rtomb and mbrtoc8 functions in <uchar.h> should be imported
1871 into namespace std in <cuchar> for -fchar8_t. */
1872/* #undef _GLIBCXX_USE_UCHAR_C8RTOMB_MBRTOC8_FCHAR8_T */
1873
1874/* Define if utime is available in <utime.h>. */
1875#define _GLIBCXX_USE_UTIME 1
1876
1877/* Define if utimensat and UTIME_OMIT are available in <sys/stat.h> and
1878 AT_FDCWD in <fcntl.h>. */
1879#define _GLIBCXX_USE_UTIMENSAT 1
1880
1881/* Define if code specialized for wchar_t should be used. */
1882#define _GLIBCXX_USE_WCHAR_T 1
1883
1884/* Define to 1 if a verbose library is built, or 0 otherwise. */
1885#define _GLIBCXX_VERBOSE 1
1886
1887/* Defined if as can handle rdrand. */
1888/* #undef _GLIBCXX_X86_RDRAND */
1889
1890/* Defined if as can handle rdseed. */
1891/* #undef _GLIBCXX_X86_RDSEED */
1892
1893/* Define to 1 if mutex_timedlock is available. */
1894#define _GTHREAD_USE_MUTEX_TIMEDLOCK 1
1895
1896/* Define for large files, on AIX-style hosts. */
1897/* #undef _GLIBCXX_LARGE_FILES */
1898
1899/* Define if all C++11 floating point overloads are available in <math.h>. */
1900#if __cplusplus >= 201103L
1901/* #undef __CORRECT_ISO_CPP11_MATH_H_PROTO_FP */
1902#endif
1903
1904/* Define if all C++11 integral type overloads are available in <math.h>. */
1905#if __cplusplus >= 201103L
1906/* #undef __CORRECT_ISO_CPP11_MATH_H_PROTO_INT */
1907#endif
1908
1909#if defined (_GLIBCXX_HAVE__ACOSF) && ! defined (_GLIBCXX_HAVE_ACOSF)
1910# define _GLIBCXX_HAVE_ACOSF 1
1911# define acosf _acosf
1912#endif
1913
1914#if defined (_GLIBCXX_HAVE__ACOSL) && ! defined (_GLIBCXX_HAVE_ACOSL)
1915# define _GLIBCXX_HAVE_ACOSL 1
1916# define acosl _acosl
1917#endif
1918
1919#if defined (_GLIBCXX_HAVE__ASINF) && ! defined (_GLIBCXX_HAVE_ASINF)
1920# define _GLIBCXX_HAVE_ASINF 1
1921# define asinf _asinf
1922#endif
1923
1924#if defined (_GLIBCXX_HAVE__ASINL) && ! defined (_GLIBCXX_HAVE_ASINL)
1925# define _GLIBCXX_HAVE_ASINL 1
1926# define asinl _asinl
1927#endif
1928
1929#if defined (_GLIBCXX_HAVE__ATAN2F) && ! defined (_GLIBCXX_HAVE_ATAN2F)
1930# define _GLIBCXX_HAVE_ATAN2F 1
1931# define atan2f _atan2f
1932#endif
1933
1934#if defined (_GLIBCXX_HAVE__ATAN2L) && ! defined (_GLIBCXX_HAVE_ATAN2L)
1935# define _GLIBCXX_HAVE_ATAN2L 1
1936# define atan2l _atan2l
1937#endif
1938
1939#if defined (_GLIBCXX_HAVE__ATANF) && ! defined (_GLIBCXX_HAVE_ATANF)
1940# define _GLIBCXX_HAVE_ATANF 1
1941# define atanf _atanf
1942#endif
1943
1944#if defined (_GLIBCXX_HAVE__ATANL) && ! defined (_GLIBCXX_HAVE_ATANL)
1945# define _GLIBCXX_HAVE_ATANL 1
1946# define atanl _atanl
1947#endif
1948
1949#if defined (_GLIBCXX_HAVE__CEILF) && ! defined (_GLIBCXX_HAVE_CEILF)
1950# define _GLIBCXX_HAVE_CEILF 1
1951# define ceilf _ceilf
1952#endif
1953
1954#if defined (_GLIBCXX_HAVE__CEILL) && ! defined (_GLIBCXX_HAVE_CEILL)
1955# define _GLIBCXX_HAVE_CEILL 1
1956# define ceill _ceill
1957#endif
1958
1959#if defined (_GLIBCXX_HAVE__COSF) && ! defined (_GLIBCXX_HAVE_COSF)
1960# define _GLIBCXX_HAVE_COSF 1
1961# define cosf _cosf
1962#endif
1963
1964#if defined (_GLIBCXX_HAVE__COSHF) && ! defined (_GLIBCXX_HAVE_COSHF)
1965# define _GLIBCXX_HAVE_COSHF 1
1966# define coshf _coshf
1967#endif
1968
1969#if defined (_GLIBCXX_HAVE__COSHL) && ! defined (_GLIBCXX_HAVE_COSHL)
1970# define _GLIBCXX_HAVE_COSHL 1
1971# define coshl _coshl
1972#endif
1973
1974#if defined (_GLIBCXX_HAVE__COSL) && ! defined (_GLIBCXX_HAVE_COSL)
1975# define _GLIBCXX_HAVE_COSL 1
1976# define cosl _cosl
1977#endif
1978
1979#if defined (_GLIBCXX_HAVE__EXPF) && ! defined (_GLIBCXX_HAVE_EXPF)
1980# define _GLIBCXX_HAVE_EXPF 1
1981# define expf _expf
1982#endif
1983
1984#if defined (_GLIBCXX_HAVE__EXPL) && ! defined (_GLIBCXX_HAVE_EXPL)
1985# define _GLIBCXX_HAVE_EXPL 1
1986# define expl _expl
1987#endif
1988
1989#if defined (_GLIBCXX_HAVE__FABSF) && ! defined (_GLIBCXX_HAVE_FABSF)
1990# define _GLIBCXX_HAVE_FABSF 1
1991# define fabsf _fabsf
1992#endif
1993
1994#if defined (_GLIBCXX_HAVE__FABSL) && ! defined (_GLIBCXX_HAVE_FABSL)
1995# define _GLIBCXX_HAVE_FABSL 1
1996# define fabsl _fabsl
1997#endif
1998
1999#if defined (_GLIBCXX_HAVE__FINITE) && ! defined (_GLIBCXX_HAVE_FINITE)
2000# define _GLIBCXX_HAVE_FINITE 1
2001# define finite _finite
2002#endif
2003
2004#if defined (_GLIBCXX_HAVE__FINITEF) && ! defined (_GLIBCXX_HAVE_FINITEF)
2005# define _GLIBCXX_HAVE_FINITEF 1
2006# define finitef _finitef
2007#endif
2008
2009#if defined (_GLIBCXX_HAVE__FINITEL) && ! defined (_GLIBCXX_HAVE_FINITEL)
2010# define _GLIBCXX_HAVE_FINITEL 1
2011# define finitel _finitel
2012#endif
2013
2014#if defined (_GLIBCXX_HAVE__FLOORF) && ! defined (_GLIBCXX_HAVE_FLOORF)
2015# define _GLIBCXX_HAVE_FLOORF 1
2016# define floorf _floorf
2017#endif
2018
2019#if defined (_GLIBCXX_HAVE__FLOORL) && ! defined (_GLIBCXX_HAVE_FLOORL)
2020# define _GLIBCXX_HAVE_FLOORL 1
2021# define floorl _floorl
2022#endif
2023
2024#if defined (_GLIBCXX_HAVE__FMODF) && ! defined (_GLIBCXX_HAVE_FMODF)
2025# define _GLIBCXX_HAVE_FMODF 1
2026# define fmodf _fmodf
2027#endif
2028
2029#if defined (_GLIBCXX_HAVE__FMODL) && ! defined (_GLIBCXX_HAVE_FMODL)
2030# define _GLIBCXX_HAVE_FMODL 1
2031# define fmodl _fmodl
2032#endif
2033
2034#if defined (_GLIBCXX_HAVE__FPCLASS) && ! defined (_GLIBCXX_HAVE_FPCLASS)
2035# define _GLIBCXX_HAVE_FPCLASS 1
2036# define fpclass _fpclass
2037#endif
2038
2039#if defined (_GLIBCXX_HAVE__FREXPF) && ! defined (_GLIBCXX_HAVE_FREXPF)
2040# define _GLIBCXX_HAVE_FREXPF 1
2041# define frexpf _frexpf
2042#endif
2043
2044#if defined (_GLIBCXX_HAVE__FREXPL) && ! defined (_GLIBCXX_HAVE_FREXPL)
2045# define _GLIBCXX_HAVE_FREXPL 1
2046# define frexpl _frexpl
2047#endif
2048
2049#if defined (_GLIBCXX_HAVE__HYPOT) && ! defined (_GLIBCXX_HAVE_HYPOT)
2050# define _GLIBCXX_HAVE_HYPOT 1
2051# define hypot _hypot
2052#endif
2053
2054#if defined (_GLIBCXX_HAVE__HYPOTF) && ! defined (_GLIBCXX_HAVE_HYPOTF)
2055# define _GLIBCXX_HAVE_HYPOTF 1
2056# define hypotf _hypotf
2057#endif
2058
2059#if defined (_GLIBCXX_HAVE__HYPOTL) && ! defined (_GLIBCXX_HAVE_HYPOTL)
2060# define _GLIBCXX_HAVE_HYPOTL 1
2061# define hypotl _hypotl
2062#endif
2063
2064#if defined (_GLIBCXX_HAVE__ISINF) && ! defined (_GLIBCXX_HAVE_ISINF)
2065# define _GLIBCXX_HAVE_ISINF 1
2066# define isinf _isinf
2067#endif
2068
2069#if defined (_GLIBCXX_HAVE__ISINFF) && ! defined (_GLIBCXX_HAVE_ISINFF)
2070# define _GLIBCXX_HAVE_ISINFF 1
2071# define isinff _isinff
2072#endif
2073
2074#if defined (_GLIBCXX_HAVE__ISINFL) && ! defined (_GLIBCXX_HAVE_ISINFL)
2075# define _GLIBCXX_HAVE_ISINFL 1
2076# define isinfl _isinfl
2077#endif
2078
2079#if defined (_GLIBCXX_HAVE__ISNAN) && ! defined (_GLIBCXX_HAVE_ISNAN)
2080# define _GLIBCXX_HAVE_ISNAN 1
2081# define isnan _isnan
2082#endif
2083
2084#if defined (_GLIBCXX_HAVE__ISNANF) && ! defined (_GLIBCXX_HAVE_ISNANF)
2085# define _GLIBCXX_HAVE_ISNANF 1
2086# define isnanf _isnanf
2087#endif
2088
2089#if defined (_GLIBCXX_HAVE__ISNANL) && ! defined (_GLIBCXX_HAVE_ISNANL)
2090# define _GLIBCXX_HAVE_ISNANL 1
2091# define isnanl _isnanl
2092#endif
2093
2094#if defined (_GLIBCXX_HAVE__LDEXPF) && ! defined (_GLIBCXX_HAVE_LDEXPF)
2095# define _GLIBCXX_HAVE_LDEXPF 1
2096# define ldexpf _ldexpf
2097#endif
2098
2099#if defined (_GLIBCXX_HAVE__LDEXPL) && ! defined (_GLIBCXX_HAVE_LDEXPL)
2100# define _GLIBCXX_HAVE_LDEXPL 1
2101# define ldexpl _ldexpl
2102#endif
2103
2104#if defined (_GLIBCXX_HAVE__LOG10F) && ! defined (_GLIBCXX_HAVE_LOG10F)
2105# define _GLIBCXX_HAVE_LOG10F 1
2106# define log10f _log10f
2107#endif
2108
2109#if defined (_GLIBCXX_HAVE__LOG10L) && ! defined (_GLIBCXX_HAVE_LOG10L)
2110# define _GLIBCXX_HAVE_LOG10L 1
2111# define log10l _log10l
2112#endif
2113
2114#if defined (_GLIBCXX_HAVE__LOGF) && ! defined (_GLIBCXX_HAVE_LOGF)
2115# define _GLIBCXX_HAVE_LOGF 1
2116# define logf _logf
2117#endif
2118
2119#if defined (_GLIBCXX_HAVE__LOGL) && ! defined (_GLIBCXX_HAVE_LOGL)
2120# define _GLIBCXX_HAVE_LOGL 1
2121# define logl _logl
2122#endif
2123
2124#if defined (_GLIBCXX_HAVE__MODF) && ! defined (_GLIBCXX_HAVE_MODF)
2125# define _GLIBCXX_HAVE_MODF 1
2126# define modf _modf
2127#endif
2128
2129#if defined (_GLIBCXX_HAVE__MODFF) && ! defined (_GLIBCXX_HAVE_MODFF)
2130# define _GLIBCXX_HAVE_MODFF 1
2131# define modff _modff
2132#endif
2133
2134#if defined (_GLIBCXX_HAVE__MODFL) && ! defined (_GLIBCXX_HAVE_MODFL)
2135# define _GLIBCXX_HAVE_MODFL 1
2136# define modfl _modfl
2137#endif
2138
2139#if defined (_GLIBCXX_HAVE__POWF) && ! defined (_GLIBCXX_HAVE_POWF)
2140# define _GLIBCXX_HAVE_POWF 1
2141# define powf _powf
2142#endif
2143
2144#if defined (_GLIBCXX_HAVE__POWL) && ! defined (_GLIBCXX_HAVE_POWL)
2145# define _GLIBCXX_HAVE_POWL 1
2146# define powl _powl
2147#endif
2148
2149#if defined (_GLIBCXX_HAVE__QFPCLASS) && ! defined (_GLIBCXX_HAVE_QFPCLASS)
2150# define _GLIBCXX_HAVE_QFPCLASS 1
2151# define qfpclass _qfpclass
2152#endif
2153
2154#if defined (_GLIBCXX_HAVE__SINCOS) && ! defined (_GLIBCXX_HAVE_SINCOS)
2155# define _GLIBCXX_HAVE_SINCOS 1
2156# define sincos _sincos
2157#endif
2158
2159#if defined (_GLIBCXX_HAVE__SINCOSF) && ! defined (_GLIBCXX_HAVE_SINCOSF)
2160# define _GLIBCXX_HAVE_SINCOSF 1
2161# define sincosf _sincosf
2162#endif
2163
2164#if defined (_GLIBCXX_HAVE__SINCOSL) && ! defined (_GLIBCXX_HAVE_SINCOSL)
2165# define _GLIBCXX_HAVE_SINCOSL 1
2166# define sincosl _sincosl
2167#endif
2168
2169#if defined (_GLIBCXX_HAVE__SINF) && ! defined (_GLIBCXX_HAVE_SINF)
2170# define _GLIBCXX_HAVE_SINF 1
2171# define sinf _sinf
2172#endif
2173
2174#if defined (_GLIBCXX_HAVE__SINHF) && ! defined (_GLIBCXX_HAVE_SINHF)
2175# define _GLIBCXX_HAVE_SINHF 1
2176# define sinhf _sinhf
2177#endif
2178
2179#if defined (_GLIBCXX_HAVE__SINHL) && ! defined (_GLIBCXX_HAVE_SINHL)
2180# define _GLIBCXX_HAVE_SINHL 1
2181# define sinhl _sinhl
2182#endif
2183
2184#if defined (_GLIBCXX_HAVE__SINL) && ! defined (_GLIBCXX_HAVE_SINL)
2185# define _GLIBCXX_HAVE_SINL 1
2186# define sinl _sinl
2187#endif
2188
2189#if defined (_GLIBCXX_HAVE__SQRTF) && ! defined (_GLIBCXX_HAVE_SQRTF)
2190# define _GLIBCXX_HAVE_SQRTF 1
2191# define sqrtf _sqrtf
2192#endif
2193
2194#if defined (_GLIBCXX_HAVE__SQRTL) && ! defined (_GLIBCXX_HAVE_SQRTL)
2195# define _GLIBCXX_HAVE_SQRTL 1
2196# define sqrtl _sqrtl
2197#endif
2198
2199#if defined (_GLIBCXX_HAVE__STRTOF) && ! defined (_GLIBCXX_HAVE_STRTOF)
2200# define _GLIBCXX_HAVE_STRTOF 1
2201# define strtof _strtof
2202#endif
2203
2204#if defined (_GLIBCXX_HAVE__STRTOLD) && ! defined (_GLIBCXX_HAVE_STRTOLD)
2205# define _GLIBCXX_HAVE_STRTOLD 1
2206# define strtold _strtold
2207#endif
2208
2209#if defined (_GLIBCXX_HAVE__TANF) && ! defined (_GLIBCXX_HAVE_TANF)
2210# define _GLIBCXX_HAVE_TANF 1
2211# define tanf _tanf
2212#endif
2213
2214#if defined (_GLIBCXX_HAVE__TANHF) && ! defined (_GLIBCXX_HAVE_TANHF)
2215# define _GLIBCXX_HAVE_TANHF 1
2216# define tanhf _tanhf
2217#endif
2218
2219#if defined (_GLIBCXX_HAVE__TANHL) && ! defined (_GLIBCXX_HAVE_TANHL)
2220# define _GLIBCXX_HAVE_TANHL 1
2221# define tanhl _tanhl
2222#endif
2223
2224#if defined (_GLIBCXX_HAVE__TANL) && ! defined (_GLIBCXX_HAVE_TANL)
2225# define _GLIBCXX_HAVE_TANL 1
2226# define tanl _tanl
2227#endif
2228
2229#endif // _GLIBCXX_CXX_CONFIG_H
2230