class Sema::ContextualImplicitConverter

Declaration

class Sema::ContextualImplicitConverter { /* full declaration omitted */ };

Description

Abstract base class used to perform a contextual implicit conversion from an expression to any type passing a filter.

Declared at: clang/include/clang/Sema/Sema.h:3738

Member Variables

public bool Suppress
public bool SuppressConversion

Method Overview

  • public ContextualImplicitConverter(bool Suppress = false, bool SuppressConversion = false)
  • public virtual clang::Sema::SemaDiagnosticBuilder diagnoseAmbiguous(clang::Sema & S, clang::SourceLocation Loc, clang::QualType T)
  • public virtual clang::Sema::SemaDiagnosticBuilder diagnoseConversion(clang::Sema & S, clang::SourceLocation Loc, clang::QualType T, clang::QualType ConvTy)
  • public virtual clang::Sema::SemaDiagnosticBuilder diagnoseExplicitConv(clang::Sema & S, clang::SourceLocation Loc, clang::QualType T, clang::QualType ConvTy)
  • public virtual clang::Sema::SemaDiagnosticBuilder diagnoseIncomplete(clang::Sema & S, clang::SourceLocation Loc, clang::QualType T)
  • public virtual clang::Sema::SemaDiagnosticBuilder diagnoseNoMatch(clang::Sema & S, clang::SourceLocation Loc, clang::QualType T)
  • public virtual bool match(clang::QualType T)
  • public virtual clang::Sema::SemaDiagnosticBuilder noteAmbiguous(clang::Sema & S, clang::CXXConversionDecl * Conv, clang::QualType ConvTy)
  • public virtual clang::Sema::SemaDiagnosticBuilder noteExplicitConv(clang::Sema & S, clang::CXXConversionDecl * Conv, clang::QualType ConvTy)
  • public virtual ~ContextualImplicitConverter()

Methods

ContextualImplicitConverter(
    bool Suppress = false,
    bool SuppressConversion = false)

Declared at: clang/include/clang/Sema/Sema.h:3743

Parameters

bool Suppress = false
bool SuppressConversion = false

virtual clang::Sema::SemaDiagnosticBuilder
diagnoseAmbiguous(clang::Sema& S,
                  clang::SourceLocation Loc,
                  clang::QualType T)

Description

Emits a diagnostic when there are multiple possible conversion functions.

Declared at: clang/include/clang/Sema/Sema.h:3772

Parameters

clang::Sema& S
clang::SourceLocation Loc
clang::QualType T

virtual clang::Sema::SemaDiagnosticBuilder
diagnoseConversion(clang::Sema& S,
                   clang::SourceLocation Loc,
                   clang::QualType T,
                   clang::QualType ConvTy)

Description

Emits a diagnostic when we picked a conversion function (for cases when we are not allowed to pick a conversion function).

Declared at: clang/include/clang/Sema/Sema.h:3780

Parameters

clang::Sema& S
clang::SourceLocation Loc
clang::QualType T
clang::QualType ConvTy

virtual clang::Sema::SemaDiagnosticBuilder
diagnoseExplicitConv(clang::Sema& S,
                     clang::SourceLocation Loc,
                     clang::QualType T,
                     clang::QualType ConvTy)

Description

Emits a diagnostic when the only matching conversion function is explicit.

Declared at: clang/include/clang/Sema/Sema.h:3762

Parameters

clang::Sema& S
clang::SourceLocation Loc
clang::QualType T
clang::QualType ConvTy

virtual clang::Sema::SemaDiagnosticBuilder
diagnoseIncomplete(clang::Sema& S,
                   clang::SourceLocation Loc,
                   clang::QualType T)

Description

Emits a diagnostic when the expression has incomplete class type.

Declared at: clang/include/clang/Sema/Sema.h:3758

Parameters

clang::Sema& S
clang::SourceLocation Loc
clang::QualType T

virtual clang::Sema::SemaDiagnosticBuilder
diagnoseNoMatch(clang::Sema& S,
                clang::SourceLocation Loc,
                clang::QualType T)

Description

Emits a diagnostic complaining that the expression does not have integral or enumeration type.

Declared at: clang/include/clang/Sema/Sema.h:3754

Parameters

clang::Sema& S
clang::SourceLocation Loc
clang::QualType T

virtual bool match(clang::QualType T)

Description

Determine whether the specified type is a valid destination type for this conversion.

Declared at: clang/include/clang/Sema/Sema.h:3749

Parameters

clang::QualType T

virtual clang::Sema::SemaDiagnosticBuilder
noteAmbiguous(clang::Sema& S,
              clang::CXXConversionDecl* Conv,
              clang::QualType ConvTy)

Description

Emits a note for one of the candidate conversions.

Declared at: clang/include/clang/Sema/Sema.h:3776

Parameters

clang::Sema& S
clang::CXXConversionDecl* Conv
clang::QualType ConvTy

virtual clang::Sema::SemaDiagnosticBuilder
noteExplicitConv(clang::Sema& S,
                 clang::CXXConversionDecl* Conv,
                 clang::QualType ConvTy)

Description

Emits a note for the explicit conversion function.

Declared at: clang/include/clang/Sema/Sema.h:3767

Parameters

clang::Sema& S
clang::CXXConversionDecl* Conv
clang::QualType ConvTy

virtual ~ContextualImplicitConverter()

Declared at: clang/include/clang/Sema/Sema.h:3783