clang 22.0.0git
clang::DiagnosticOptions Class Reference

Options for controlling the compiler diagnostics engine. More...

#include "clang/Basic/DiagnosticOptions.h"

Public Types

enum  TextDiagnosticFormat { Clang , MSVC , Vi , SARIF }
enum  {
  DefaultTabStop = 8 , MaxTabStop = 100 , DefaultMacroBacktraceLimit = 6 , DefaultTemplateBacktraceLimit = 10 ,
  DefaultConstexprBacktraceLimit = 10 , DefaultSpellCheckingLimit = 50 , DefaultSnippetLineLimit = 16 , DefaultShowLineNumbers = 1
}

Public Member Functions

 DiagnosticOptions ()

Public Attributes

std::string DiagnosticLogFile
 The file to log diagnostic output to.
std::string DiagnosticSerializationFile
 The file to serialize diagnostics to (non-appending).
std::string DiagnosticSuppressionMappingsFile
 Path for the file that defines diagnostic suppression mappings.
std::vector< std::string > Warnings
 The list of -W... options used to alter the diagnostic mappings, with the prefixes removed.
std::vector< std::string > UndefPrefixes
 The list of prefixes from -Wundef-prefix=... used to generate warnings for undefined macros.
std::vector< std::string > Remarks
 The list of -R... options used to alter the diagnostic mappings, with the prefixes removed.
std::vector< std::string > VerifyPrefixes
 The prefixes for comment directives sought by -verify ("expected" by default).
std::vector< std::string > SystemHeaderWarningsModules
 The list of -Wsystem-headers-in-module=... options used to override whether -Wsystem-headers is enabled on a per-module basis.

Friends

class CompilerInvocation
class CompilerInvocationBase
bool ParseDiagnosticArgs (DiagnosticOptions &Opts, llvm::opt::ArgList &Args, clang::DiagnosticsEngine *Diags=nullptr, bool DefaultDiagColor=true)
 Fill out Opts based on the options given in Args.

Detailed Description

Options for controlling the compiler diagnostics engine.

Definition at line 69 of file DiagnosticOptions.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
DefaultTabStop 
MaxTabStop 
DefaultMacroBacktraceLimit 
DefaultTemplateBacktraceLimit 
DefaultConstexprBacktraceLimit 
DefaultSpellCheckingLimit 
DefaultSnippetLineLimit 
DefaultShowLineNumbers 

Definition at line 80 of file DiagnosticOptions.h.

◆ TextDiagnosticFormat

Enumerator
Clang 
MSVC 
Vi 
SARIF 

Definition at line 77 of file DiagnosticOptions.h.

Constructor & Destructor Documentation

◆ DiagnosticOptions()

clang::DiagnosticOptions::DiagnosticOptions ( )
inline

Definition at line 141 of file DiagnosticOptions.h.

Referenced by ParseDiagnosticArgs.

◆ CompilerInvocation

friend class CompilerInvocation
friend

Definition at line 73 of file DiagnosticOptions.h.

References CompilerInvocation.

Referenced by CompilerInvocation.

◆ CompilerInvocationBase

friend class CompilerInvocationBase
friend

Definition at line 74 of file DiagnosticOptions.h.

References CompilerInvocationBase.

Referenced by CompilerInvocationBase.

◆ ParseDiagnosticArgs

bool ParseDiagnosticArgs ( DiagnosticOptions & Opts,
llvm::opt::ArgList & Args,
clang::DiagnosticsEngine * Diags = nullptr,
bool DefaultDiagColor = true )
friend

Fill out Opts based on the options given in Args.

Args must have been created from the OptTable returned by createCC1OptTable().

When errors are encountered, return false and, if Diags is non-null, report the error(s).

References DiagnosticOptions().

Member Data Documentation

◆ DiagnosticLogFile

std::string clang::DiagnosticOptions::DiagnosticLogFile

The file to log diagnostic output to.

Definition at line 105 of file DiagnosticOptions.h.

Referenced by clang::CompilerInstance::createDiagnostics(), and SetUpDiagnosticLog().

◆ DiagnosticSerializationFile

std::string clang::DiagnosticOptions::DiagnosticSerializationFile

The file to serialize diagnostics to (non-appending).

Definition at line 108 of file DiagnosticOptions.h.

Referenced by clang::CompilerInstance::createDiagnostics(), and makeCommonInvocationForModuleBuild().

◆ DiagnosticSuppressionMappingsFile

std::string clang::DiagnosticOptions::DiagnosticSuppressionMappingsFile

Path for the file that defines diagnostic suppression mappings.

Definition at line 111 of file DiagnosticOptions.h.

Referenced by clang::ProcessWarningOptions().

◆ Remarks

std::vector<std::string> clang::DiagnosticOptions::Remarks

The list of -R... options used to alter the diagnostic mappings, with the prefixes removed.

Definition at line 123 of file DiagnosticOptions.h.

Referenced by optimizeDiagnosticOpts(), and clang::ProcessWarningOptions().

◆ SystemHeaderWarningsModules

std::vector<std::string> clang::DiagnosticOptions::SystemHeaderWarningsModules

The list of -Wsystem-headers-in-module=... options used to override whether -Wsystem-headers is enabled on a per-module basis.

Definition at line 131 of file DiagnosticOptions.h.

Referenced by clang::PCHValidator::ReadDiagnosticOptions().

◆ UndefPrefixes

std::vector<std::string> clang::DiagnosticOptions::UndefPrefixes

The list of prefixes from -Wundef-prefix=... used to generate warnings for undefined macros.

Definition at line 119 of file DiagnosticOptions.h.

Referenced by EvaluateValue(), and optimizeDiagnosticOpts().

◆ VerifyPrefixes

std::vector<std::string> clang::DiagnosticOptions::VerifyPrefixes

The prefixes for comment directives sought by -verify ("expected" by default).

Definition at line 127 of file DiagnosticOptions.h.

Referenced by DetailedErrorString(), ParseDirective(), PrintExpected(), and PrintUnexpected().

◆ Warnings

std::vector<std::string> clang::DiagnosticOptions::Warnings

The list of -W... options used to alter the diagnostic mappings, with the prefixes removed.

Definition at line 115 of file DiagnosticOptions.h.

Referenced by optimizeDiagnosticOpts(), and clang::ProcessWarningOptions().


The documentation for this class was generated from the following file: