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