@@ -191,13 +191,13 @@ SILDebugVariable::createFromAllocation(const AllocationInst *AI) {
191191AllocStackInst::AllocStackInst (SILDebugLocation Loc, SILType elementType,
192192 ArrayRef<SILValue> TypeDependentOperands,
193193 SILFunction &F, Optional<SILDebugVariable> Var,
194- bool hasDynamicLifetime)
194+ bool hasDynamicLifetime, bool isLexical )
195195 : InstructionBase(Loc, elementType.getAddressType()),
196196 SILDebugVariableSupplement(Var ? Var->DIExpr.getNumElements() : 0,
197197 Var ? Var->Type.hasValue() : false,
198198 Var ? Var->Loc.hasValue() : false,
199199 Var ? Var->Scope != nullptr : false),
200- dynamicLifetime(hasDynamicLifetime) {
200+ dynamicLifetime(hasDynamicLifetime), lexical(isLexical) {
201201 SILNode::Bits.AllocStackInst .NumOperands =
202202 TypeDependentOperands.size ();
203203 assert (SILNode::Bits.AllocStackInst .NumOperands ==
@@ -218,19 +218,18 @@ AllocStackInst::AllocStackInst(SILDebugLocation Loc, SILType elementType,
218218 TypeDependentOperands);
219219}
220220
221- AllocStackInst *
222- AllocStackInst::create (SILDebugLocation Loc ,
223- SILType elementType, SILFunction &F ,
224- Optional<SILDebugVariable> Var ,
225- bool hasDynamicLifetime ) {
221+ AllocStackInst *AllocStackInst::create (SILDebugLocation Loc,
222+ SILType elementType, SILFunction &F ,
223+ Optional<SILDebugVariable> Var ,
224+ bool hasDynamicLifetime ,
225+ bool isLexical ) {
226226 SmallVector<SILValue, 8 > TypeDependentOperands;
227227 collectTypeDependentOperands (TypeDependentOperands, F,
228228 elementType.getASTType ());
229229 void *Buffer = allocateDebugVarCarryingInst<AllocStackInst>(
230230 F.getModule (), Var, TypeDependentOperands);
231- return ::new (Buffer)
232- AllocStackInst (Loc, elementType, TypeDependentOperands, F, Var,
233- hasDynamicLifetime);
231+ return ::new (Buffer) AllocStackInst (Loc, elementType, TypeDependentOperands,
232+ F, Var, hasDynamicLifetime, isLexical);
234233}
235234
236235VarDecl *AllocationInst::getDecl () const {
0 commit comments