Coverage Report

Created: 2019-07-24 05:18

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/tools/clang/include/clang/Frontend/LangStandards.def
Line
Count
Source
1
122k
//===-- LangStandards.def - Language Standard Data --------------*- C++ -*-===//
2
122k
//
3
122k
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
122k
// See https://llvm.org/LICENSE.txt for license information.
5
122k
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
122k
//
7
122k
//===----------------------------------------------------------------------===//
8
122k
9
#ifndef LANGSTANDARD
10
#error "LANGSTANDARD must be defined before including this file"
11
#endif
12
13
122k
/// LANGSTANDARD(IDENT, NAME, LANG, DESC, FEATURES)
14
122k
///
15
122k
/// \param IDENT - The name of the standard as a C++ identifier.
16
122k
/// \param NAME - The name of the standard.
17
122k
/// \param LANG - The InputKind::Language for which this is a standard.
18
122k
/// \param DESC - A short description of the standard.
19
122k
/// \param FEATURES - The standard features as flags, these are enums from the
20
122k
/// clang::frontend namespace, which is assumed to be be available.
21
122k
22
122k
/// LANGSTANDARD_ALIAS(IDENT, ALIAS)
23
122k
/// \param IDENT - The name of the standard as a C++ identifier.
24
122k
/// \param ALIAS - The alias of the standard.
25
122k
26
122k
/// LANGSTANDARD_ALIAS_DEPR(IDENT, ALIAS)
27
122k
/// Same as LANGSTANDARD_ALIAS, but for a deprecated alias.
28
122k
29
#ifndef LANGSTANDARD_ALIAS
30
#define LANGSTANDARD_ALIAS(IDENT, ALIAS)
31
#endif
32
33
#ifndef LANGSTANDARD_ALIAS_DEPR
34
289k
#define LANGSTANDARD_ALIAS_DEPR(IDENT, ALIAS) LANGSTANDARD_ALIAS(IDENT, ALIAS)
35
#endif
36
37
122k
// C89-ish modes.
38
122k
LANGSTANDARD122k
(c89, "c89",
39
122k
             C, "ISO C 1990",
40
122k
             ImplicitInt)
41
122k
LANGSTANDARD_ALIAS17.2k
(c89, "c90")
42
122k
LANGSTANDARD_ALIAS17.2k
(c89, "iso9899:1990")
43
122k
44
122k
LANGSTANDARD17.0k
(c94, "iso9899:199409",
45
122k
             C, "ISO C 1990 with amendment 1",
46
122k
             Digraphs | ImplicitInt)
47
122k
48
122k
LANGSTANDARD17.2k
(gnu89, "gnu89",
49
122k
             C, "ISO C 1990 with GNU extensions",
50
122k
             LineComment | Digraphs | GNUMode | ImplicitInt)
51
122k
LANGSTANDARD_ALIAS17.2k
(gnu89, "gnu90")
52
122k
53
122k
// C99-ish modes
54
122k
LANGSTANDARD17.7k
(c99, "c99",
55
122k
             C, "ISO C 1999",
56
122k
             LineComment | C99 | Digraphs | HexFloat)
57
122k
LANGSTANDARD_ALIAS17.2k
(c99, "iso9899:1999")
58
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(c99, "c9x")
59
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(c99, "iso9899:199x")
60
122k
61
122k
LANGSTANDARD17.2k
(gnu99, "gnu99",
62
122k
             C, "ISO C 1999 with GNU extensions",
63
122k
             LineComment | C99 | Digraphs | GNUMode | HexFloat)
64
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(gnu99, "gnu9x")
65
122k
66
122k
// C11 modes
67
122k
LANGSTANDARD17.2k
(c11, "c11",
68
122k
             C, "ISO C 2011",
69
122k
             LineComment | C99 | C11 | Digraphs | HexFloat)
70
122k
LANGSTANDARD_ALIAS17.2k
(c11, "iso9899:2011")
71
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(c11, "c1x")
72
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(c11, "iso9899:201x")
73
122k
74
122k
LANGSTANDARD32.1k
(gnu11, "gnu11",
75
122k
             C, "ISO C 2011 with GNU extensions",
76
122k
             LineComment | C99 | C11 | Digraphs | GNUMode | HexFloat)
77
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(gnu11, "gnu1x")
78
122k
79
122k
// C17 modes
80
122k
LANGSTANDARD17.0k
(c17, "c17",
81
122k
             C, "ISO C 2017",
82
122k
             LineComment | C99 | C11 | C17 | Digraphs | HexFloat)
83
122k
LANGSTANDARD_ALIAS17.2k
(c17, "iso9899:2017")
84
122k
LANGSTANDARD_ALIAS17.2k
(c17, "c18")
85
122k
LANGSTANDARD_ALIAS17.2k
(c17, "iso9899:2018")
86
122k
LANGSTANDARD17.0k
(gnu17, "gnu17",
87
122k
             C, "ISO C 2017 with GNU extensions",
88
122k
             LineComment | C99 | C11 | C17 | Digraphs | GNUMode | HexFloat)
89
122k
LANGSTANDARD_ALIAS17.2k
(gnu17, "gnu18")
90
122k
91
122k
// C2x modes
92
122k
LANGSTANDARD17.0k
(c2x, "c2x",
93
122k
             C, "Working Draft for ISO C2x",
94
122k
             LineComment | C99 | C11 | C17 | C2x | Digraphs | HexFloat)
95
122k
LANGSTANDARD17.0k
(gnu2x, "gnu2x",
96
122k
             C, "Working Draft for ISO C2x with GNU extensions",
97
122k
             LineComment | C99 | C11 | C17 | C2x | Digraphs | GNUMode | HexFloat)
98
122k
99
122k
// C++ modes
100
122k
LANGSTANDARD22.6k
(cxx98, "c++98",
101
122k
             CXX, "ISO C++ 1998 with amendments",
102
122k
             LineComment | CPlusPlus | Digraphs)
103
122k
LANGSTANDARD_ALIAS17.2k
(cxx98, "c++03")
104
122k
105
122k
LANGSTANDARD17.8k
(gnucxx98, "gnu++98",
106
122k
             CXX, "ISO C++ 1998 with amendments and GNU extensions",
107
122k
             LineComment | CPlusPlus | Digraphs | GNUMode)
108
122k
LANGSTANDARD_ALIAS17.2k
(gnucxx98, "gnu++03")
109
122k
110
122k
LANGSTANDARD39.5k
(cxx11, "c++11",
111
122k
             CXX, "ISO C++ 2011 with amendments",
112
122k
             LineComment | CPlusPlus | CPlusPlus11 | Digraphs)
113
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(cxx11, "c++0x")
114
122k
115
122k
LANGSTANDARD17.2k
(gnucxx11, "gnu++11", CXX,
116
122k
             "ISO C++ 2011 with amendments and GNU extensions",
117
122k
             LineComment | CPlusPlus | CPlusPlus11 | Digraphs | GNUMode)
118
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(gnucxx11, "gnu++0x")
119
122k
120
122k
LANGSTANDARD19.1k
(cxx14, "c++14",
121
122k
             CXX, "ISO C++ 2014 with amendments",
122
122k
             LineComment | CPlusPlus | CPlusPlus11 | CPlusPlus14 | Digraphs)
123
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(cxx14, "c++1y")
124
122k
125
122k
LANGSTANDARD25.3k
(gnucxx14, "gnu++14",
126
122k
             CXX, "ISO C++ 2014 with amendments and GNU extensions",
127
122k
             LineComment | CPlusPlus | CPlusPlus11 | CPlusPlus14 | Digraphs |
128
122k
             GNUMode)
129
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(gnucxx14, "gnu++1y")
130
122k
131
122k
LANGSTANDARD18.1k
(cxx17, "c++17",
132
122k
             CXX, "ISO C++ 2017 with amendments",
133
122k
             LineComment | CPlusPlus | CPlusPlus11 | CPlusPlus14 | CPlusPlus17 |
134
122k
             Digraphs | HexFloat)
135
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(cxx17, "c++1z")
136
122k
137
122k
LANGSTANDARD17.0k
(gnucxx17, "gnu++17",
138
122k
             CXX, "ISO C++ 2017 with amendments and GNU extensions",
139
122k
             LineComment | CPlusPlus | CPlusPlus11 | CPlusPlus14 | CPlusPlus17 |
140
122k
             Digraphs | HexFloat | GNUMode)
141
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(gnucxx17, "gnu++1z")
142
122k
143
122k
LANGSTANDARD17.4k
(cxx2a, "c++2a",
144
122k
             CXX, "Working draft for ISO C++ 2020",
145
122k
             LineComment | CPlusPlus | CPlusPlus11 | CPlusPlus14 | CPlusPlus17 |
146
122k
             CPlusPlus2a | Digraphs | HexFloat)
147
122k
148
122k
LANGSTANDARD17.0k
(gnucxx2a, "gnu++2a",
149
122k
             CXX, "Working draft for ISO C++ 2020 with GNU extensions",
150
122k
             LineComment | CPlusPlus | CPlusPlus11 | CPlusPlus14 | CPlusPlus17 |
151
122k
             CPlusPlus2a | Digraphs | HexFloat | GNUMode)
152
122k
153
122k
// OpenCL
154
122k
LANGSTANDARD17.3k
(opencl10, "cl1.0",
155
122k
             OpenCL, "OpenCL 1.0",
156
122k
             LineComment | C99 | Digraphs | HexFloat | OpenCL)
157
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(opencl10, "cl")
158
122k
159
122k
LANGSTANDARD17.0k
(opencl11, "cl1.1",
160
122k
             OpenCL, "OpenCL 1.1",
161
122k
             LineComment | C99 | Digraphs | HexFloat | OpenCL)
162
122k
LANGSTANDARD17.1k
(opencl12, "cl1.2",
163
122k
             OpenCL, "OpenCL 1.2",
164
122k
             LineComment | C99 | Digraphs | HexFloat | OpenCL)
165
122k
LANGSTANDARD17.2k
(opencl20, "cl2.0",
166
122k
             OpenCL, "OpenCL 2.0",
167
122k
             LineComment | C99 | Digraphs | HexFloat | OpenCL)
168
122k
LANGSTANDARD17.1k
(openclcpp, "c++",
169
122k
             OpenCL, "C++ for OpenCL",
170
122k
             LineComment | CPlusPlus | CPlusPlus11 | CPlusPlus14 | CPlusPlus17 |
171
122k
             Digraphs | HexFloat | OpenCL)
172
122k
173
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(opencl10, "CL")
174
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(opencl11, "CL1.1")
175
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(opencl12, "CL1.2")
176
122k
LANGSTANDARD_ALIAS_DEPR17.0k
(opencl20, "CL2.0")
177
122k
178
122k
// CUDA
179
122k
LANGSTANDARD17.2k
(cuda, "cuda", CUDA, "NVIDIA CUDA(tm)",
180
122k
             LineComment | CPlusPlus | Digraphs)
181
122k
182
122k
// HIP
183
122k
LANGSTANDARD122k
(hip, "hip", HIP, "HIP",
184
122k
             LineComment | CPlusPlus | Digraphs)
185
122k
186
122k
#undef LANGSTANDARD
187
122k
#undef LANGSTANDARD_ALIAS
188
122k
#undef LANGSTANDARD_ALIAS_DEPR