1# Copyright 2017 Rene Rivera 2# Distributed under the Boost Software License, Version 1.0. 3# (See accompanying file LICENSE_1_0.txt or copy at 4# http://www.boost.org/LICENSE_1_0.txt) 5 6import feature ; 7 8#| tag::doc[] 9 10[[bbv2.builtin.features.cxxstd]]`cxxstd`:: 11*Allowed values*: `98`, `03`, `0x`, `11`, `1y`, `14`, `1z`, `17`, `2a`, `20`, 12`latest`. 13+ 14Specifies the version of the C++ Standard Language to build with. All the 15official versions of the standard since "98" are included. It is also possible 16to specify using the experimental, work in progress, `latest` version. Some 17compilers specified intermediate versions for the experimental versions leading 18up to the released standard version. Those are included following the GNU 19nomenclature as `0x`, `1y`, `1z`, and `2a`. Depending on the compiler `latest` 20would map to one of those. 21 22NOTE: This is an `optional` feature. Hence when not specified the compiler 23default behaviour is used. 24 25NOTE: Please consult the toolset specific documentation for which `cxxstd` 26is supported. 27 28|# # end::doc[] 29 30feature.feature cxxstd 31 : 98 03 0x 11 1y 14 1z 17 2a 20 latest 32 : optional composite propagated ; 33 34#| tag::doc[] 35 36[[bbv2.builtin.features.cxxstd-dialect]]`cxxstd-dialect`:: 37*Subfeature of* `cxxstd` 38+ 39*Allowed values*: `iso`, `gnu`, `ms`. 40+ 41Indicates if a non-standard dialect should be used. These usually have 42either/or extensions or platform specific functionality. Not specifying the 43dialect will default to 'iso' which will attempt to use ISO C++ Standard 44conformance to the best of the compiler's ability. 45 46|# # end::doc[] 47 48feature.subfeature cxxstd : dialect 49 : iso gnu ms 50 : composite propagated ; 51