xref: /illumos-gate/usr/src/test/header-tests/cfg/cxx-symbols-env.cfg (revision e1e6b944360d951edf36ef4198261818ed2d9b2f)
1#
2# This file and its contents are supplied under the terms of the
3# Common Development and Distribution License ("CDDL"), version 1.0.
4# You may only use this file in accordance with the terms of version
5# 1.0 of the CDDL.
6#
7# A full copy of the text of the CDDL should have accompanied this
8# source.  A copy of the CDDL is also available via the Internet at
9# http://www.illumos.org/license/CDDL.
10#
11
12#
13# Copyright 2026 Gordon W. Ross
14#
15
16#
17# Compilation environments for C++ symbol visibility tests.
18#
19# Each environment specifies a C++ standard and optional preprocessor
20# definitions.  The _C99 variants add -D_STDC_C99 to expose C99 math
21# declarations enabled by feature-test macros.  Group names ending
22# with "+" include all standards from that version forward.
23#
24
25env | CXX98		| c++98 |
26env | CXX11		| c++11 |
27env | CXX14		| c++14 |
28env | CXX17		| c++17 |
29env | CXX20		| c++20 |
30
31env | CXX98_C99		| c++98 | -D_STDC_C99
32env | CXX11_C99		| c++11 | -D_STDC_C99
33env | CXX14_C99		| c++14 | -D_STDC_C99
34env | CXX17_C99		| c++17 | -D_STDC_C99
35env | CXX20_C99		| c++20 | -D_STDC_C99
36
37#
38# These are ordered from less inclusive (most recent) to most inclusive,
39# same convention as c-symbols-env.cfg.
40#
41env_group | CXX17+	| CXX20 CXX17
42env_group | CXX14+	| CXX17+ CXX14
43env_group | CXX11+	| CXX14+ CXX11
44env_group | CXX98+	| CXX11+ CXX98
45
46# Just the C99 variants (-D_STDC_C99)
47env_group | CXX_C99+	| CXX20_C99 CXX17_C99 CXX14_C99 CXX11_C99 CXX98_C99
48
49# All compilation environments.
50env_group | ALL		| CXX98+ CXX_C99+
51