This patch essentially removes all the FIXMEs following calls to DeduceTemplateArguments() that want to keep track of deduction failure info.
Details
Diff Detail
Event Timeline
lib/Sema/SemaOverload.cpp | ||
---|---|---|
551 | More indentation please. | |
8411 | Please add a comment to this function explaining what it's form | |
8440 | Less indentation please. | |
8447 | Maybe use three overloads for the OverloadCandidate*, FunctionDecl*, and Decl* cases, rather than an explicit specialization here? And perhaps fold the Decl* and FunctionDecl* cases together, with an assertion that the decl is in fact a FunctionDecl. | |
8492–8496 | How are we guaranteed that this is not reached when diagnosing a bad deduction due to substitution failure in a TemplateSpecCandidateSet? | |
8502–8504 | It looks like this is unreachable: getDescribedTemplate is only used from DiagnoseBadDeduction, where TemplatedDecl is either FunctionDecl (for the overload set case) or Decl (for the template deduction case). Maybe replace this function with one that takes a Decl*, and dispatches on whether it's a function/class? | |
8510–8512 | Less indentation please. | |
lib/Sema/SemaTemplateDeduction.cpp | ||
4152–4153 | Remove this FIXME now that you've fixed it :) |
More indentation please.