mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-30 14:26:10 +00:00

Previously, the only way to display the list of available checkers was to invoke the analyzer with -analyzer-checker-help frontend flag. This however wasn't really great from a maintainer standpoint: users came across checkers meant strictly for development purposes that weren't to be tinkered with, or those that were still in development. This patch creates a clearer division in between these categories. From now on, we'll have 3 flags to display the list checkers. These lists are mutually exclusive and can be used in any combination (for example to display both stable and alpha checkers). -analyzer-checker-help: Displays the list for stable, production ready checkers. -analyzer-checker-help-alpha: Displays the list for in development checkers. Enabling is discouraged for non-development purposes. -analyzer-checker-help-developer: Modeling and debug checkers. Modeling checkers shouldn't be enabled/disabled by hand, and debug checkers shouldn't be touched by users. Differential Revision: https://reviews.llvm.org/D62093 llvm-svn: 361558
61 lines
2.2 KiB
C
61 lines
2.2 KiB
C
// RUN: %clang_cc1 -analyzer-checker-help \
|
|
// RUN: 2>&1 | FileCheck %s -check-prefix=CHECK-STABLE
|
|
|
|
// RUN: %clang_cc1 -analyzer-checker-help-alpha \
|
|
// RUN: 2>&1 | FileCheck %s -check-prefix=CHECK-ALPHA
|
|
|
|
// RUN: %clang_cc1 -analyzer-checker-help-developer \
|
|
// RUN: 2>&1 | FileCheck %s -check-prefix=CHECK-DEVELOPER
|
|
|
|
// RUN: %clang_cc1 -analyzer-checker-help-developer \
|
|
// RUN: -analyzer-checker-help-alpha \
|
|
// RUN: 2>&1 | FileCheck %s -check-prefix=CHECK-DEVELOPER-ALPHA
|
|
|
|
// RUN: %clang_cc1 -analyzer-checker-help \
|
|
// RUN: -analyzer-checker-help-alpha \
|
|
// RUN: 2>&1 | FileCheck %s -check-prefix=CHECK-STABLE-ALPHA
|
|
|
|
// RUN: %clang_cc1 -analyzer-checker-help \
|
|
// RUN: -analyzer-checker-help-developer \
|
|
// RUN: 2>&1 | FileCheck %s -check-prefix=CHECK-STABLE-DEVELOPER
|
|
|
|
// RUN: %clang_cc1 -analyzer-checker-help \
|
|
// RUN: -analyzer-checker-help-alpha \
|
|
// RUN: -analyzer-checker-help-developer \
|
|
// RUN: 2>&1 | FileCheck %s -check-prefix=CHECK-STABLE-ALPHA-DEVELOPER
|
|
|
|
// CHECK-STABLE-NOT: alpha.unix.Chroot
|
|
// CHECK-DEVELOPER-NOT: alpha.unix.Chroot
|
|
// CHECK-ALPHA: alpha.unix.Chroot
|
|
|
|
// Note that alpha.cplusplus.IteratorModeling is not only an alpha, but also a
|
|
// hidden checker. In this case, we'd only like to see it in the developer list.
|
|
// CHECK-ALPHA-NOT: alpha.cplusplus.IteratorModeling
|
|
// CHECK-DEVELOPER: alpha.cplusplus.IteratorModeling
|
|
|
|
// CHECK-STABLE: core.DivideZero
|
|
// CHECK-DEVELOPER-NOT: core.DivideZero
|
|
// CHECK-ALPHA-NOT: core.DivideZero
|
|
|
|
// CHECK-STABLE-NOT: debug.ConfigDumper
|
|
// CHECK-DEVELOPER: debug.ConfigDumper
|
|
// CHECK-ALPHA-NOT: debug.ConfigDumper
|
|
|
|
|
|
// CHECK-STABLE-ALPHA: alpha.unix.Chroot
|
|
// CHECK-DEVELOPER-ALPHA: alpha.unix.Chroot
|
|
// CHECK-STABLE-DEVELOPER-NOT: alpha.unix.Chroot
|
|
|
|
// CHECK-STABLE-ALPHA: core.DivideZero
|
|
// CHECK-DEVELOPER-ALPHA-NOT: core.DivideZero
|
|
// CHECK-STABLE-DEVELOPER: core.DivideZero
|
|
|
|
// CHECK-STABLE-ALPHA-NOT: debug.ConfigDumper
|
|
// CHECK-DEVELOPER-ALPHA: debug.ConfigDumper
|
|
// CHECK-STABLE-DEVELOPER: debug.ConfigDumper
|
|
|
|
|
|
// CHECK-STABLE-ALPHA-DEVELOPER: alpha.unix.Chroot
|
|
// CHECK-STABLE-ALPHA-DEVELOPER: core.DivideZero
|
|
// CHECK-STABLE-ALPHA-DEVELOPER: debug.ConfigDumper
|