Skip to content

Commit faa7a87

Browse files
authored
[NFC][TableGen][analyzer] Fix some obsolete comments (#156677)
ClangSACheckersEmitter.cpp had some comments that described the structure of its output, which would have been helpful, but became out of sync with the code. This commit updates them to ensure they are consistent with `CheckerRegistry.cpp`.
1 parent f831463 commit faa7a87

File tree

1 file changed

+32
-17
lines changed

1 file changed

+32
-17
lines changed

clang/utils/TableGen/ClangSACheckersEmitter.cpp

Lines changed: 32 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -202,19 +202,22 @@ void clang::EmitClangSACheckers(const RecordKeeper &Records, raw_ostream &OS) {
202202

203203
// Emit a package option.
204204
//
205-
// PACKAGE_OPTION(OPTIONTYPE, PACKAGENAME, OPTIONNAME, DESCRIPTION, DEFAULT)
206-
// - OPTIONTYPE: Type of the option, whether it's integer or boolean etc.
205+
// PACKAGE_OPTION(TYPE, FULLNAME, CMDFLAG, DESC, DEFAULT_VAL,
206+
// DEVELOPMENT_STATUS, IS_HIDDEN)
207+
// - TYPE: Type of the option, whether it's integer or boolean etc.
207208
// This is important for validating user input. Note that
208209
// it's a string, rather than an actual type: since we can
209210
// load checkers runtime, we can't use template hackery for
210211
// sorting this out compile-time.
211-
// - PACKAGENAME: Name of the package.
212-
// - OPTIONNAME: Name of the option.
213-
// - DESCRIPTION
214-
// - DEFAULT: The default value for this option.
212+
// - FULLNAME: Name of the package.
213+
// - CMDFLAG: Name of the option.
214+
// - DESC: The description of the option.
215+
// - DEFAULT_VAL: The default value for this option as a string.
216+
// - DEVELOPMENT_STATUS: "released" or "alpha".
217+
// - IS_HIDDEN: Boolean (true or false) marking if the option is hidden.
215218
//
216219
// The full option can be specified in the command like this:
217-
// -analyzer-config PACKAGENAME:OPTIONNAME=VALUE
220+
// -analyzer-config FULLNAME:CMDFLAG=VALUE
218221
OS << "\n"
219222
"#ifdef GET_PACKAGE_OPTIONS\n";
220223
for (const Record *Package : packages) {
@@ -233,12 +236,21 @@ void clang::EmitClangSACheckers(const RecordKeeper &Records, raw_ostream &OS) {
233236

234237
// Emit checkers.
235238
//
236-
// CHECKER(FULLNAME, CLASS, HELPTEXT)
239+
// CHECKER(FULLNAME, CLASS, HELPTEXT, DOC_URI, IS_HIDDEN)
237240
// - FULLNAME: The full name of the checker, including packages, e.g.:
238241
// alpha.cplusplus.UninitializedObject
239-
// - CLASS: The name of the checker, with "Checker" appended, e.g.:
240-
// UninitializedObjectChecker
242+
// - CLASS: The common ending of the name of the register... and
243+
// shouldRegister... functions. Traditionally coincides with the
244+
// name of the class that implements the checker, but can be
245+
// anything else e.g. in checker families.
241246
// - HELPTEXT: The description of the checker.
247+
// - DOC_URI: If the checker is NotDocumented, an empty string; if the
248+
// checker HasDocumentation, the concatenation of the fixed URL
249+
// https://clang.llvm.org/docs/analyzer/checkers.html# and
250+
// a html id derived from the full name by writing '-' instead
251+
// of '.' and lowercasing.
252+
// - IS_HIDDEN: Boolean (true or false) marking if the checker is hidden.
253+
242254
OS << "\n"
243255
"#ifdef GET_CHECKERS\n"
244256
"\n";
@@ -300,19 +312,22 @@ void clang::EmitClangSACheckers(const RecordKeeper &Records, raw_ostream &OS) {
300312

301313
// Emit a package option.
302314
//
303-
// CHECKER_OPTION(OPTIONTYPE, CHECKERNAME, OPTIONNAME, DESCRIPTION, DEFAULT)
304-
// - OPTIONTYPE: Type of the option, whether it's integer or boolean etc.
315+
// CHECKER_OPTION(TYPE, FULLNAME, CMDFLAG, DESC, DEFAULT_VAL,
316+
// DEVELOPMENT_STATUS, IS_HIDDEN)
317+
// - TYPE: Type of the option, whether it's integer or boolean etc.
305318
// This is important for validating user input. Note that
306319
// it's a string, rather than an actual type: since we can
307320
// load checkers runtime, we can't use template hackery for
308321
// sorting this out compile-time.
309-
// - CHECKERNAME: Name of the package.
310-
// - OPTIONNAME: Name of the option.
311-
// - DESCRIPTION
312-
// - DEFAULT: The default value for this option.
322+
// - FULLNAME: Name of the checker.
323+
// - CMDFLAG: Name of the option.
324+
// - DESC: The description of the option.
325+
// - DEFAULT_VAL: The default value for this option as a string.
326+
// - DEVELOPMENT_STATUS: "released" or "alpha".
327+
// - IS_HIDDEN: Boolean (true or false) marking if the option is hidden.
313328
//
314329
// The full option can be specified in the command like this:
315-
// -analyzer-config CHECKERNAME:OPTIONNAME=VALUE
330+
// -analyzer-config FULLNAME:CMDFLAG=VALUE
316331
OS << "\n"
317332
"#ifdef GET_CHECKER_OPTIONS\n";
318333
for (const Record *Checker : checkers) {

0 commit comments

Comments
 (0)