HomePhabricator

[analyzer] List checkers in 3 categories: released, alpha, developer

Description

[analyzer] List checkers in 3 categories: released, alpha, developer

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