83 Commits
Author SHA1 Message Date
Peter Dimov f6fdfb9291 Define BOOST_CLANG_VERSION 2021-07-04 18:49:01 +03:00
Glen Fernandes c6817bf70e Implement BOOST_OVERRIDE 2020-04-09 16:22:41 -04:00
Edward Diener 4fdd8bf833 Changed from boost_no_union_static_data to boost_no_cxx11_unrestricted_union, in both files and macro name. Implemented extended functionality for user-defined classes with non-trivial special member functions in test. 2019-12-11 21:58:12 -05:00
Edward Diener 4031128717 Added defect macro BOOST_NO_CXX11_UNION_STATIC_DATA for compilers which do not support unions with static data. 2019-12-11 00:33:25 -05:00
jzmaddock 778ceed6f0 Tentatively enable __float128 support for clang 2019-02-08 19:09:07 +00:00
jzmaddock d265f48d7b Don't use __attribute__((__visibility__("default"))) for clang on windows as it isn't supported.
Fixes https://github.com/boostorg/config/issues/226.
2018-08-03 18:21:18 +01:00
jzmaddock 29b754ed08 Merge pull request #216 from tzlaine/develop
Add BOOST_NO_CXX17_IF_CONSTEXPR.
2018-04-18 19:26:47 +01:00
Andrey Semashev 3b709bc3ed Use dllimport/dllexport with clang and gcc on Cygwin.
This is required at least for Boost.WinAPI to match the declarations in
Windows SDK headers, which use dllimport.

Also, for clang on Windows, use dllimport/dllexport even beyond Cygwin.
The compiler does support these attributes, and it should for
compatibility with Windows headers.
2018-03-11 17:37:13 +03:00
Zach Laine 15d78e548f Add BOOST_NO_CXX17_IF_CONSTEXPR. 2018-03-06 17:44:52 -06:00
Andrey Semashev 4a58e5360a Added BOOST_MAY_ALIAS and BOOST_NO_MAY_ALIAS macros.
The macros can be used to mark types that can alias other types (i.e. break
C++ strict aliasing rules).
2017-07-12 17:51:53 +03:00
jzmaddock 7d41f597cb Tentative fix for clang-3.0 failing config_test:
It appears not to completely support variadic template expansion.
2017-06-14 19:42:21 +01:00
Glen Fernandes a6ccb8f910 Add BOOST_NO_CXX17_FOLD_EXPRESSIONS detection 2017-05-29 10:29:17 -04:00
Glen Fernandes 1995778211 Add BOOST_NO_CXX17_INLINE_VARIABLES detection 2017-05-29 10:01:36 -04:00
Glen Fernandes fe06370972 Add BOOST_NO_CXX17_STRUCTURED_BINDINGS detection 2017-05-29 09:57:18 -04:00
Glen Fernandes 041bf1ee1f Define BOOST_NO_CXX11_SFINAE_EXPR in C++98 clang
When compiling in pre-C++11 clang mode it should be defined
2017-02-20 11:30:56 -05:00
Minmin Gong 328f0f40c8 Fix a compiling problem under ClangC2. 2017-02-05 15:50:33 -08:00
jzmaddock 4fc32ad70a Add support for C++11 thread_local. 2016-07-02 09:09:19 +01:00
jzmaddock 534ee17f3f Fix previous commit! 2016-03-31 09:08:54 +01:00
jzmaddock 743dc92612 Don't use __is_identifier unless it's actually defined. 2016-03-30 19:36:22 +01:00
jzmaddock f84f27c366 Update for clang on Windows:
Enables __int64 when available.
Enables stdint.h when available.
Enables log1p/expm1 when available.
Enables char16_t and char32_t when available.
2016-03-26 19:09:44 +00:00
Axel Huebl 73ee4f5b03 int128 & CUDA C++03: Update ICC and Clang 2015-12-18 11:41:56 +01:00
jzmaddock 05d55111e4 Apply patch for clang from https://svn.boost.org/trac/boost/ticket/11833 2015-12-08 08:58:29 +00:00
jzmaddock a2616b4f3f Merge branch 'develop' of https://github.com/boostorg/config into develop 2015-09-16 18:28:04 +01:00
jzmaddock a17884f425 Add support for __unreachable_return on clang and GCC.
See https://svn.boost.org/trac/boost/ticket/11661.
2015-09-16 18:27:48 +01:00
morinmorin 2656ae42d4 Guard attribute names with double underscores. 2015-09-03 19:02:48 +09:00
morinmorin cdcb3fc1aa Remove the detection code for 'unused' attribute on Clang. 2015-09-03 18:32:02 +09:00
Nicolas Cornu 034817c492 Use __has_attribute instead of gcc version in clang 2015-08-27 14:09:55 +02:00
morinmorin 70096c5d80 Remove __has_extension checks for features that are not available as extensions.
For those features, `__has_extension` checks are equivalent to `__has_feature` checks and thus they are unnecessary.
2014-10-26 21:06:49 +09:00
morinmorin 5050ae481f Use feature names with double underscores to avoid macro interference. 2014-10-26 18:42:35 +09:00
morinmorin db66a9f051 Remove __has_extension macros for features that emit warnings.
Variable templates can be used in C++03/11 and initialized lambda captures can be used in C++11 as language extensions, but they trigger "extension" warnings. Disallow these extensions to prevent the warning.
2014-10-26 11:16:53 +09:00
jzmaddock 224d70f02a Fix clang version checks. 2014-10-22 17:58:22 +01:00
jzmaddock 42cc344212 Merge branch 'develop' of https://github.com/boostorg/config into develop 2014-10-21 12:47:47 +01:00
jzmaddock dcbb032aa3 Rename BOOST_NO_CXX14_DIGIT_SEPARATOR to BOOST_NO_CXX14_DIGIT_SEPARATORS.
Fix name of BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES in docs.
2014-10-21 12:39:17 +01:00
Kohei Takahashi 78e67031e3 Define BOOST_NO_CXX14_CONSTEXPR unless clang > 3.4.
Signed-off-by: Kohei Takahashi <flast@flast.jp>
2014-10-21 01:04:06 +09:00
jzmaddock f9bfac1297 Fix broken <atomic> with clang, tentatively fix clang number separator option. 2014-10-12 13:20:11 +01:00
jzmaddock b811dd40ae Add C++14 support based on https://github.com/boostorg/config/pull/39 2014-10-12 10:01:22 +01:00
jzmaddock 003d33725e Add helper macro - BOOST_ATTRIBUTE_UNUSED - to suppress unused type/variable warnings. 2014-10-11 13:10:25 +01:00
jzmaddock 441311c950 Disable __int128 support when the compiler is really CUDA.
See https://svn.boost.org/trac/boost/ticket/10418.
2014-10-10 17:22:24 +01:00
Antony Polukhin 6a0c4aeb34 Fix a typo, while it is not too late 2014-08-22 18:44:16 +04:00
jzmaddock 2d297754ad Set BOOST_NO_CXX11_FINAL for all obsolete compilers, or for those we can't test locally.
Improve tests for BOOST_NO_CXX11_FINAL.
2014-08-19 18:34:09 +01:00
jzmaddock 3138b2b747 We don't need to check for Apple if we've already tested that this is in MSVC emulation mode. 2014-08-19 17:57:56 +01:00
Antony Polukhin 6ea485e9f1 Fix BOOST_HAS_PRAGMA_DETECT_MISSMATCH detection for Clang 2014-08-18 20:35:42 +04:00
Antony Polukhin 3087b80a77 Added BOOST_HAS_PRAGMA_DETECT_MISSMATCH macro 2014-08-11 15:11:38 +04:00
Andrzej Krzemienski d205efbb1b Added macro BOOST_NO_CXX11_REF_QUALIFIERS 2014-05-28 17:33:28 +02:00
Edward Diener 86ca46f142 Workaround for older versions of clang. 2013-12-16 08:08:53 -05:00
Edward Diener deedcb848f Clang using VC++ RTL currently does not support char16_t or char32_t
[SVN r86675]
2013-11-13 12:23:33 +00:00
Tim Blechmann 1a1d2f17eb config: clang - detect support for int128
[SVN r86497]
2013-10-28 10:06:20 +00:00
Andrey Semashev 23579c60d2 Added BOOST_NO_CXX11_INLINE_NAMESPACES and BOOST_NO_CXX11_TRAILING_RESULT_TYPES macros. Also corrected some tests that were using outdated testcase namespaces.
[SVN r84873]
2013-06-22 12:23:09 +00:00
Andrey Semashev 75d100a4ac Added BOOST_HAS_PRAGMA_ONCE for compilers that support it. The macro was already defined for DMC, but not for other compilers and was not documented.
[SVN r84796]
2013-06-15 16:40:46 +00:00
Andrey Semashev 1c3d02c469 Added BOOST_NO_CXX11_ALIGNAS, BOOST_ALIGNMENT and BOOST_NO_ALIGNMENT macros.
[SVN r84794]
2013-06-15 13:48:07 +00:00