Ignore qualifiers when attempting to match arguments to parameter types for

__builtin_overload

llvm-svn: 49943
This commit is contained in:
Nate Begeman 2008-04-18 23:35:14 +00:00
parent ce4d7fce6b
commit 46bd037c07
1 changed files with 6 additions and 3 deletions

View File

@ -2168,10 +2168,13 @@ Sema::ExprResult Sema::ActOnChooseExpr(SourceLocation BuiltinLoc, ExprTy *cond,
/// arguments in FnType. /// arguments in FnType.
static bool ExprsMatchFnType(Expr **Args, const FunctionTypeProto *FnType) { static bool ExprsMatchFnType(Expr **Args, const FunctionTypeProto *FnType) {
unsigned NumParams = FnType->getNumArgs(); unsigned NumParams = FnType->getNumArgs();
for (unsigned i = 0; i != NumParams; ++i) for (unsigned i = 0; i != NumParams; ++i) {
if (Args[i]->getType().getCanonicalType() != QualType ExprTy = Args[i]->getType().getCanonicalType();
FnType->getArgType(i).getCanonicalType()) QualType ParmTy = FnType->getArgType(i).getCanonicalType();
if (ExprTy.getUnqualifiedType() != ParmTy.getUnqualifiedType())
return false; return false;
}
return true; return true;
} }