diff --git a/compiler/src/dmd/optimize.d b/compiler/src/dmd/optimize.d index be28d08240..5f6311431b 100644 --- a/compiler/src/dmd/optimize.d +++ b/compiler/src/dmd/optimize.d @@ -586,7 +586,7 @@ Expression Expression_optimize(Expression e, int result, bool keepLvalue) Expression ex = new AddrExp(ae1.loc, ae1); // &a[i] ex.type = ae1.type.pointerTo(); - Expression add = new AddExp(ae.loc, ex, new IntegerExp(ae.loc, offset, e.type)); + Expression add = new AddExp(ae.loc, ex, new IntegerExp(ae.e2.loc, offset, ae.e2.type)); add.type = e.type; ret = Expression_optimize(add, result, keepLvalue); return;