clang 22.0.0git
clang::Sema::DelayedDiagnostics Class Reference

A class which encapsulates the logic for delaying diagnostics during parsing and other processing. More...

#include "clang/Sema/Sema.h"

Public Member Functions

 DelayedDiagnostics ()=default
void add (const sema::DelayedDiagnostic &diag)
 Adds a delayed diagnostic.
bool shouldDelayDiagnostics ()
 Determines whether diagnostics should be delayed.
sema::DelayedDiagnosticPoolgetCurrentPool () const
 Returns the current delayed-diagnostics pool.
DelayedDiagnosticsState push (sema::DelayedDiagnosticPool &pool)
 Enter a new scope.
void popWithoutEmitting (DelayedDiagnosticsState state)
 Leave a delayed-diagnostic state that was previously pushed.
DelayedDiagnosticsState pushUndelayed ()
 Enter a new scope where access and deprecation diagnostics are not delayed.
void popUndelayed (DelayedDiagnosticsState state)
 Undo a previous pushUndelayed().

Detailed Description

A class which encapsulates the logic for delaying diagnostics during parsing and other processing.

Definition at line 1359 of file Sema.h.

Constructor & Destructor Documentation

◆ DelayedDiagnostics()

clang::Sema::DelayedDiagnostics::DelayedDiagnostics ( )
default

Member Function Documentation

◆ add()

void clang::Sema::DelayedDiagnostics::add ( const sema::DelayedDiagnostic & diag)
inline

Adds a delayed diagnostic.

Add a diagnostic to the current delay pool.

Definition at line 327 of file DelayedDiagnostic.h.

References shouldDelayDiagnostics().

Referenced by CheckAccess(), clang::Sema::CheckParameter(), EmitAvailabilityWarning(), handleObjCOwnershipTypeAttr(), and inferARCLifetimeForPointee().

◆ getCurrentPool()

sema::DelayedDiagnosticPool * clang::Sema::DelayedDiagnostics::getCurrentPool ( ) const
inline

Returns the current delayed-diagnostics pool.

Definition at line 1374 of file Sema.h.

Referenced by clang::Sema::ActOnEndOfTranslationUnit(), clang::Sema::PopParsingDeclaration(), and clang::Sema::redelayDiagnostics().

◆ popUndelayed()

void clang::Sema::DelayedDiagnostics::popUndelayed ( DelayedDiagnosticsState state)
inline

Undo a previous pushUndelayed().

Definition at line 1402 of file Sema.h.

Referenced by clang::Sema::PopParsingClass().

◆ popWithoutEmitting()

void clang::Sema::DelayedDiagnostics::popWithoutEmitting ( DelayedDiagnosticsState state)
inline

Leave a delayed-diagnostic state that was previously pushed.

Do not emit any of the diagnostics. This is performed as part of the bookkeeping of popping a pool "properly".

Definition at line 1388 of file Sema.h.

Referenced by clang::Sema::PopParsingDeclaration().

◆ push()

DelayedDiagnosticsState clang::Sema::DelayedDiagnostics::push ( sema::DelayedDiagnosticPool & pool)
inline

Enter a new scope.

Access and deprecation diagnostics will be collected in this pool.

Definition at line 1378 of file Sema.h.

Referenced by clang::Sema::PushParsingDeclaration().

◆ pushUndelayed()

DelayedDiagnosticsState clang::Sema::DelayedDiagnostics::pushUndelayed ( )
inline

Enter a new scope where access and deprecation diagnostics are not delayed.

Definition at line 1394 of file Sema.h.

Referenced by clang::Sema::PushParsingClass().

◆ shouldDelayDiagnostics()

bool clang::Sema::DelayedDiagnostics::shouldDelayDiagnostics ( )
inline

Determines whether diagnostics should be delayed.

Definition at line 1371 of file Sema.h.

Referenced by add(), CheckAccess(), clang::Sema::CheckParameter(), EmitAvailabilityWarning(), handleObjCOwnershipTypeAttr(), and inferARCLifetimeForPointee().


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