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__ 20190503 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 __replacement_assert(const char * __file,int __line,const char * __function,const char * __condition)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) 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 ! __is_identifier(__builtin_launder) 661 # define _GLIBCXX_HAVE_BUILTIN_LAUNDER 1 662 # endif 663 # if ! __is_identifier(__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 /* #undef _GLIBCXX_HAVE_ENDIAN_H */ 778 779 /* Define if ENODATA exists. */ 780 /* #undef _GLIBCXX_HAVE_ENODATA */ 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 /* #undef _GLIBCXX_HAVE_ENOSR */ 790 791 /* Define if ENOSTR exists. */ 792 /* #undef _GLIBCXX_HAVE_ENOSTR */ 793 794 /* Define if ENOTRECOVERABLE exists. */ 795 /* #undef _GLIBCXX_HAVE_ENOTRECOVERABLE */ 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 /* #undef _GLIBCXX_HAVE_EOWNERDEAD */ 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 /* #undef _GLIBCXX_HAVE_ETIME */ 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 /* #undef _GLIBCXX_HAVE_EXCEPTION_PTR_SINCE_GCC46 */ 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 /* #undef _GLIBCXX_HAVE_FINITEL */ 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 #define _GLIBCXX_HAVE_IEEEFP_H 1 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 /* #undef _GLIBCXX_HAVE_ISINFF */ 922 923 /* Define to 1 if you have the `isinfl' function. */ 924 /* #undef _GLIBCXX_HAVE_ISINFL */ 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 /* #undef _GLIBCXX_HAVE_ISNANL */ 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 /* #undef _GLIBCXX_HAVE_LIBINTL_H */ 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 1 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 /* #undef _GLIBCXX_HAVE_LINUX_FUTEX */ 970 971 /* Define to 1 if you have the <linux/random.h> header file. */ 972 /* #undef _GLIBCXX_HAVE_LINUX_RANDOM_H */ 973 974 /* Define to 1 if you have the <linux/types.h> header file. */ 975 /* #undef _GLIBCXX_HAVE_LINUX_TYPES_H */ 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 #define _GLIBCXX_HAVE_MACHINE_ENDIAN_H 1 994 995 /* Define to 1 if you have the <machine/param.h> header file. */ 996 #define _GLIBCXX_HAVE_MACHINE_PARAM_H 1 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 /* #undef _GLIBCXX_HAVE_MEMALIGN */ 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 #define _GLIBCXX_HAVE_MODF 1 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 /* #undef _GLIBCXX_HAVE_SINCOS */ 1063 1064 /* Define to 1 if you have the `sincosf' function. */ 1065 /* #undef _GLIBCXX_HAVE_SINCOSF */ 1066 1067 /* Define to 1 if you have the `sincosl' function. */ 1068 /* #undef _GLIBCXX_HAVE_SINCOSL */ 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 /* #undef _GLIBCXX_HAVE_STRERROR_L */ 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 /* #undef _GLIBCXX_HAVE_STRXFRM_L */ 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 /* #undef _GLIBCXX_HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT */ 1136 1137 /* Define to 1 if you have the <sys/filio.h> header file. */ 1138 #define _GLIBCXX_HAVE_SYS_FILIO_H 1 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 /* #undef _GLIBCXX_HAVE_SYS_SDT_H */ 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 /* #undef _GLIBCXX_HAVE_SYS_SYSINFO_H */ 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 #define _GLIBCXX11_USE_C99_COMPLEX 1 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 /* #undef _GLIBCXX98_USE_C99_STDLIB */ 1535 1536 /* Define if C99 functions or macros in <wchar.h> should be imported in 1537 <cwchar> in namespace std for C++98. */ 1538 /* #undef _GLIBCXX98_USE_C99_WCHAR */ 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 #define _GLIBCXX_HAS_GTHREADS 1 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 /* #undef _GLIBCXX_SYMVER */ 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 /* #undef _GLIBCXX_SYMVER_GNU */ 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 /* #undef _GLIBCXX_USE_C99 */ 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 /* #undef _GLIBCXX_USE_DECIMAL_FLOAT */ 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 /* #undef _GLIBCXX_USE_GET_NPROCS */ 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 /* #undef _GLIBCXX_USE_LFS */ 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 /* #undef _GLIBCXX_USE_NLS */ 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 #define _GLIBCXX_USE_PTHREAD_RWLOCK_T 1 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 /* #undef _GLIBCXX_USE_REALPATH */ 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 /* #undef _GLIBCXX_USE_SENDFILE */ 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 #define _GLIBCXX_USE_SYSCTL_HW_NCPU 1 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 2066