summaryrefslogtreecommitdiffstats
path: root/Tests/CompileFeatures/genex_test.cpp
Commit message (Collapse)AuthorAgeFilesLines
* CMake: Support upcoming C++26 language levelRobert Maynard2022-08-311-0/+3
|
* CUDA, CXX, OBJCXX: C++23 support with Clang 12Raul Tambre2020-12-081-0/+6
| | | | | Clang 12 landed initial support for C++23 language mode flag -std={c|gnu}++2b in commit 6627a3c2873fdf7ccba1a1573371079be48b36e8.
* Tests: Remove outdated portion of CompileFeatures genex testBrad King2019-04-091-11/+0
| | | | | | The genex part of the test verifies that `$<COMPILE_FEATURES:...>` evaluates as expected. It does not need to actually try using code with the associated features, as that is tested separately.
* Features: Do not use a lower-than-default standard for requested featuresZsolt Parragi2019-02-261-2/+2
| | | | | | | | `AddRequiredTargetC(xx)` feature didn't take the default compiler standard into account, which possibly resulted in the use of an older standard when some features requested it. Fixes: #18686
* Revise C++ coding style using clang-format-6.0Kitware Robot2018-06-011-38/+38
| | | | | | | | | | | | Run the `clang-format.bash` script to update all our C and C++ code to a new style defined by `.clang-format`. Use `clang-format` version 6.0. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
* Features: Fix COMPILE_FEATURES genex for C++ 14 and 17 featuresBrad King2017-08-081-0/+12
| | | | | | When `CXX_STANDARD` is not at least 14 or 17, features enabled by the compiler for those standards should not be reported as existing by the `COMPILE_FEATURES` genex. Fix the implementation and add a test.
* Revise C++ coding style using clang-formatKitware Robot2016-05-161-24/+23
| | | | | | | | | | | | | Run the `Utilities/Scripts/clang-format.bash` script to update all our C++ code to a new style defined by `.clang-format`. Use `clang-format` version 3.8. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
* Features: Fix test to reject missing expectation definitionsBrad King2015-01-261-0/+12
| | | | | | | | | Whenever feature support is added to a compiler, the CompileFeatures test needs to be updated to set expected availability of features. Add #error directives to ensure the test fails if expectations are not set. Suggested-by: Stephen Kelly <steveire@gmail.com>
* Features: Emit a test failure if 'override' is present but not expectedStephen Kelly2015-01-261-0/+3
|
* Features: Test presence of cxx_auto_type with genex.Stephen Kelly2015-01-171-10/+3
| | | | | | The purpose of that test is to cover the case where the genex reports '1', and the feature is chosen to be present on all/most supported compilers. GNU 4.4 does not support cxx_nullptr.
* Features: Extend the tests for the COMPILE_FEATURES genex.Stephen Kelly2015-01-151-0/+30
|
* Revert topic 'feature_record_msvc'Brad King2015-01-141-1/+1
| | | | | | | | | | | Revert commits: 2d738ce3 Help: Add notes for topic 'feature_record_msvc' f73718c9 Features: Enable writing of MSVC compiler feature header. 64c30bdc Features: Record for MSVC C++ 2015 and MSVC C 2010-2015. 225c0ef8 Features: Record for MSVC 2010-2013. This topic was merged to master prematurely, so remove it.
* Features: Enable writing of MSVC compiler feature header.Robert Maynard2015-01-111-1/+1
| | | | | | | | | | | | | | | | | Notes: VS2015 and above are the only MSVC versions to support cxx_final, so remove usages from the tests, and instead only test for cxx_override. VS2012 and above to conform to cxx_decltype_incomplete_return_types proposal, but without support for auto return types the dcl.type.simple example in the proposal doesn't compile. VS2013 and above to conform to the updated cxx_contextual_conversions proposal, but VS2010 and above pass the test. Compilers such as MSVC have no explicit flags to enable C++11 mode, it just is always on. So only run the link tests with compilers that require a flag to specify the language version.
* Features: Test nullptr as a side-effect activation of static_assert.Stephen Kelly2015-01-031-0/+11
| | | | | | Because not all compilers under test support the existing 'activation features', add another test to ensure that compilers which support both static_assert and nullptr behave as expected in this test.
* Features: Test an expectation of whether OVERRIDE_CONTROL is expectedStephen Kelly2015-01-031-0/+2
| | | | | | | | | The tests below test the presence of both cxx_final and cxx_override, only one of which is supported by MSVC. The test is in part intended to verify that the COMPILE_FEATURES genex supports multiple arguments and allows users to define names for groups of features (Clang already calls cxx_final and cxx_override 'override control' as a group). Keep the test, and allow the expectation to be set as appropriate.
* Features: Add COMPILE_FEATURES generator expression.Stephen Kelly2014-05-211-0/+21
Allow setting build properties based on the features available for a target. The availability of features is determined at generate-time by evaluating the link implementation. Ensure that the <LANG>_STANDARD determined while evaluating COMPILE_FEATURES in the link implementation is not lower than that provided by the INTERFACE of the link implementation. This is similar to handling of transitive properties such as POSITION_INDEPENDENT_CODE.