clang 22.0.0git
|
Abstract base class used to perform a contextual implicit conversion from an expression to any type passing a filter. More...
#include "clang/Sema/Sema.h"
Public Member Functions | |
ContextualImplicitConverter (bool Suppress=false, bool SuppressConversion=false) | |
virtual bool | match (QualType T)=0 |
Determine whether the specified type is a valid destination type for this conversion. | |
virtual SemaDiagnosticBuilder | diagnoseNoMatch (Sema &S, SourceLocation Loc, QualType T)=0 |
Emits a diagnostic complaining that the expression does not have integral or enumeration type. | |
virtual SemaDiagnosticBuilder | diagnoseIncomplete (Sema &S, SourceLocation Loc, QualType T)=0 |
Emits a diagnostic when the expression has incomplete class type. | |
virtual SemaDiagnosticBuilder | diagnoseExplicitConv (Sema &S, SourceLocation Loc, QualType T, QualType ConvTy)=0 |
Emits a diagnostic when the only matching conversion function is explicit. | |
virtual SemaDiagnosticBuilder | noteExplicitConv (Sema &S, CXXConversionDecl *Conv, QualType ConvTy)=0 |
Emits a note for the explicit conversion function. | |
virtual SemaDiagnosticBuilder | diagnoseAmbiguous (Sema &S, SourceLocation Loc, QualType T)=0 |
Emits a diagnostic when there are multiple possible conversion functions. | |
virtual SemaDiagnosticBuilder | noteAmbiguous (Sema &S, CXXConversionDecl *Conv, QualType ConvTy)=0 |
Emits a note for one of the candidate conversions. | |
virtual SemaDiagnosticBuilder | diagnoseConversion (Sema &S, SourceLocation Loc, QualType T, QualType ConvTy)=0 |
Emits a diagnostic when we picked a conversion function (for cases when we are not allowed to pick a conversion function). | |
virtual | ~ContextualImplicitConverter () |
Public Attributes | |
bool | Suppress |
bool | SuppressConversion |
Abstract base class used to perform a contextual implicit conversion from an expression to any type passing a filter.
|
inline |
Definition at line 10273 of file Sema.h.
References Suppress, and SuppressConversion.
Referenced by clang::Sema::ICEConvertDiagnoser::ICEConvertDiagnoser().
|
inlinevirtual |
|
pure virtual |
Emits a diagnostic when there are multiple possible conversion functions.
References clang::Sema::Sema(), and clang::T.
Referenced by diagnoseAmbiguousConversion().
|
pure virtual |
Emits a diagnostic when we picked a conversion function (for cases when we are not allowed to pick a conversion function).
References clang::Sema::Sema(), and clang::T.
Referenced by recordConversion().
|
pure virtual |
Emits a diagnostic when the only matching conversion function is explicit.
References clang::Sema::Sema(), and clang::T.
Referenced by diagnoseNoViableConversion().
|
pure virtual |
Emits a diagnostic when the expression has incomplete class type.
References clang::Sema::Sema(), and clang::T.
Referenced by clang::Sema::PerformContextualImplicitConversion().
|
pure virtual |
Emits a diagnostic complaining that the expression does not have integral or enumeration type.
Implemented in clang::Sema::ICEConvertDiagnoser.
References clang::Sema::Sema(), and clang::T.
Referenced by finishContextualImplicitConversion(), and clang::Sema::PerformContextualImplicitConversion().
Determine whether the specified type is a valid destination type for this conversion.
Implemented in clang::Sema::ICEConvertDiagnoser.
References clang::T.
Referenced by finishContextualImplicitConversion(), and clang::Sema::PerformContextualImplicitConversion().
|
pure virtual |
Emits a note for one of the candidate conversions.
References clang::Sema::Sema().
Referenced by diagnoseAmbiguousConversion().
|
pure virtual |
Emits a note for the explicit conversion function.
References clang::Sema::Sema().
Referenced by diagnoseNoViableConversion().
bool clang::Sema::ContextualImplicitConverter::Suppress |
bool clang::Sema::ContextualImplicitConverter::SuppressConversion |
Definition at line 10271 of file Sema.h.
Referenced by ContextualImplicitConverter(), clang::Sema::ICEConvertDiagnoser::ICEConvertDiagnoser(), and recordConversion().