[D] Re-apply change for handling non-local references in nested functions
Commit Message
Hi,
This was first applied by Pierre-Marie back in February (see
63e43d3aedb8b1112899c2d0ad74cbbee687e5d6), but my re-write of d-exp.y
was written about 6 months earlier, and I subsequently missed it when
backporting upstream changes.
This reapplies that change.
Regards
Iain.
gdb/ChangeLog:
* d-exp.y: Remove an obsolete comment and propagate the block
information to the produced expression.
---
@@ -483,9 +483,7 @@ PrimaryExpression:
}
write_exp_elt_opcode (pstate, OP_VAR_VALUE);
- /* We want to use the selected frame, not another more inner frame
- which happens to be in the same block. */
- write_exp_elt_block (pstate, NULL);
+ write_exp_elt_block (pstate, sym.block);
write_exp_elt_sym (pstate, sym.symbol);
write_exp_elt_opcode (pstate, OP_VAR_VALUE);
}