diff options
author | John McCall <rjmccall@apple.com> | 2010-02-01 18:53:26 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2010-02-01 18:53:26 +0000 |
commit | 342fec43c515184a3c0d0600323dfec2b059e74e (patch) | |
tree | 59d7eeffe2c93a1ea22208d90c281ff24dc5b450 /lib/Sema/SemaOverload.h | |
parent | d17e340e2d516139931768697bf080f60920ba9d (diff) |
Note that an overload candidate was non-viable because template argument
deduction failed. Right now there's a very vague diagnostic for most cases
and a good diagnostic for incomplete deduction.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94988 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaOverload.h')
-rw-r--r-- | lib/Sema/SemaOverload.h | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/lib/Sema/SemaOverload.h b/lib/Sema/SemaOverload.h index 66ed2259bd..cc26277825 100644 --- a/lib/Sema/SemaOverload.h +++ b/lib/Sema/SemaOverload.h @@ -465,11 +465,25 @@ namespace clang { return AccessSpecifier(Access); } - /// FinalConversion - For a conversion function (where Function is - /// a CXXConversionDecl), the standard conversion that occurs - /// after the call to the overload candidate to convert the result - /// of calling the conversion function to the required type. - StandardConversionSequence FinalConversion; + /// A structure used to record information about a failed + /// template argument deduction. + struct DeductionFailureInfo { + // A Sema::TemplateDeductionResult. + unsigned Result; + + // A TemplateParameter. + void *TemplateParameter; + }; + + union { + DeductionFailureInfo DeductionFailure; + + /// FinalConversion - For a conversion function (where Function is + /// a CXXConversionDecl), the standard conversion that occurs + /// after the call to the overload candidate to convert the result + /// of calling the conversion function to the required type. + StandardConversionSequence FinalConversion; + }; /// hasAmbiguousConversion - Returns whether this overload /// candidate requires an ambiguous conversion or not. |