![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /usr/include/boost/predef/other/ |
Upload File : |
/* Copyright Rene Rivera 2017 Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) */ #ifndef BOOST_PREDEF_WORKAROUND_H #define BOOST_PREDEF_WORKAROUND_H /*` [heading `BOOST_PREDEF_WORKAROUND`] `` BOOST_PREDEF_WORKAROUND(symbol,comp,major,minor,patch) `` Usage: `` #if BOOST_PREDEF_WORKAROUND(BOOST_COMP_CLANG,<,3,0,0) // Workaround for old clang compilers.. #endif `` Defines a comparison against two version numbers that depends on the definion of `BOOST_STRICT_CONFIG`. When `BOOST_STRICT_CONFIG` is defined this will expand to a value convertible to `false`. Which has the effect of disabling all code conditionally guarded by `BOOST_PREDEF_WORKAROUND`. When `BOOST_STRICT_CONFIG` is undefine this expand to test the given `symbol` version value with the `comp` comparison against `BOOST_VERSION_NUMBER(major,minor,patch)`. */ #ifdef BOOST_STRICT_CONFIG # define BOOST_PREDEF_WORKAROUND(symbol, comp, major, minor, patch) (0) #else # include <boost/predef/version_number.h> # define BOOST_PREDEF_WORKAROUND(symbol, comp, major, minor, patch) \ ( (symbol) != (0) ) && \ ( (symbol) comp (BOOST_VERSION_NUMBER( (major) , (minor) , (patch) )) ) #endif /*` [heading `BOOST_PREDEF_TESTED_AT`] `` BOOST_PREDEF_TESTED_AT(symbol,major,minor,patch) `` Usage: `` #if BOOST_PREDEF_TESTED_AT(BOOST_COMP_CLANG,3,5,0) // Needed for clang, and last checked for 3.5.0. #endif `` Defines a comparison against two version numbers that depends on the definion of `BOOST_STRICT_CONFIG` and `BOOST_DETECT_OUTDATED_WORKAROUNDS`. When `BOOST_STRICT_CONFIG` is defined this will expand to a value convertible to `false`. Which has the effect of disabling all code conditionally guarded by `BOOST_PREDEF_TESTED_AT`. When `BOOST_STRICT_CONFIG` is undefined this expand to either: * A value convertible to `true` when `BOOST_DETECT_OUTDATED_WORKAROUNDS` is not defined. * A value convertible `true` when the expansion of `BOOST_PREDEF_WORKAROUND(symbol, <=, major, minor, patch)` is `true` and `BOOST_DETECT_OUTDATED_WORKAROUNDS` is defined. * A compile error when the expansion of `BOOST_PREDEF_WORKAROUND(symbol, >, major, minor, patch)` is true and `BOOST_DETECT_OUTDATED_WORKAROUNDS` is defined. */ #ifdef BOOST_STRICT_CONFIG # define BOOST_PREDEF_TESTED_AT(symbol, major, minor, patch) (0) #else # ifdef BOOST_DETECT_OUTDATED_WORKAROUNDS # define BOOST_PREDEF_TESTED_AT(symbol, major, minor, patch) ( \ BOOST_PREDEF_WORKAROUND(symbol, <=, major, minor, patch) \ ? 1 \ : (1%0) ) # else # define BOOST_PREDEF_TESTED_AT(symbol, major, minor, patch) \ ( (symbol) >= BOOST_VERSION_NUMBER_AVAILABLE ) # endif #endif #endif