It isn't necessary to call hasDefaultArg because we can't rematerialize
a captured variable that is a function parameter, regardless of whether
or not it has a default argument. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@268318
91177308-0d34-0410-b5e6-
96231b3b80d8
static llvm::Constant *tryCaptureAsConstant(CodeGenModule &CGM,
CodeGenFunction *CGF,
const VarDecl *var) {
- // Don't rematerialize default arguments of function parameters.
- if (auto *PD = dyn_cast<ParmVarDecl>(var))
- if (PD->hasDefaultArg())
- return nullptr;
+ // Return if this is a function paramter. We shouldn't try to
+ // rematerialize default arguments of function parameters.
+ if (isa<ParmVarDecl>(var))
+ return nullptr;
QualType type = var->getType();