clang API Documentation

Public Member Functions | Public Attributes
clang::DeductionFailureInfo Struct Reference

#include <TemplateDeduction.h>

Collaboration diagram for clang::DeductionFailureInfo:
Collaboration graph
[legend]

List of all members.

Public Member Functions

PartialDiagnosticAtgetSFINAEDiagnostic ()
 Retrieve the diagnostic which caused this deduction failure, if any.
TemplateParameter getTemplateParameter ()
 Retrieve the template parameter this deduction failure refers to, if any.
TemplateArgumentListgetTemplateArgumentList ()
 Retrieve the template argument list associated with this deduction failure, if any.
const TemplateArgumentgetFirstArg ()
 Return the first template argument this deduction failure refers to, if any.
const TemplateArgumentgetSecondArg ()
 Return the second template argument this deduction failure refers to, if any.
ExprgetExpr ()
 Return the expression this deduction failure refers to, if any.
void Destroy ()
 Free any memory associated with this deduction failure.

Public Attributes

unsigned Result: 8
 A Sema::TemplateDeductionResult.
unsigned HasDiagnostic: 1
 Indicates whether a diagnostic is stored in Diagnostic.
void * Data
 Opaque pointer containing additional data about this deduction failure.
union {
   void *   Align
   char   Diagnostic [sizeof(PartialDiagnosticAt)]
}; 
 A diagnostic indicating why deduction failed.

Detailed Description

A structure used to record information about a failed template argument deduction, for diagnosis.

Definition at line 177 of file TemplateDeduction.h.


Member Function Documentation

Return the expression this deduction failure refers to, if any.

Definition at line 745 of file SemaOverload.cpp.

References clang::Sema::TDK_FailedOverloadResolution.

Referenced by DiagnoseBadDeduction().

Retrieve the diagnostic which caused this deduction failure, if any.

Definition at line 633 of file SemaOverload.cpp.

Referenced by DiagnoseBadDeduction().


Member Data Documentation

union { ... }

A diagnostic indicating why deduction failed.

Definition at line 190 of file TemplateDeduction.h.

Opaque pointer containing additional data about this deduction failure.

Definition at line 186 of file TemplateDeduction.h.

Referenced by clang::Sema::AddConversionCandidate(), clang::Sema::AddOverloadCandidate(), clang::Sema::AddSurrogateCandidate(), DiagnoseFailedEnableIfAttr(), and clang::MakeDeductionFailureInfo().

Definition at line 191 of file TemplateDeduction.h.

Referenced by clang::MakeDeductionFailureInfo().

Indicates whether a diagnostic is stored in Diagnostic.

Definition at line 182 of file TemplateDeduction.h.

Referenced by clang::MakeDeductionFailureInfo().


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