r262533 - in /trunk/gcc/go/gofrontend: MERGE ex...
ian@gcc.gnu.org
ian@gcc.gnu.org
Tue Jul 10 00:55:00 GMT 2018
Author: ian
Date: Tue Jul 10 00:55:28 2018
New Revision: 262533
URL: https://gcc.gnu.org/viewcvs?rev=262533&root=gcc&view=rev
Log:
compiler: fix double evaluation with interface field expression
In Interface_field_reference_expression, the interface expression
is used in two places, so a temporary variable is used. Previously,
we used a Set_and_use_temporary_expression, which, when evaluated
twice, causes double evaluation of the underlying expression. Fix
by setting the temporary once and use Temporary_reference_expression
instead.
Fixes golang/go#26248.
Reviewed-on: https://go-review.googlesource.com/122756
Modified:
trunk/gcc/go/gofrontend/MERGE
trunk/gcc/go/gofrontend/expressions.cc
More information about the Gcc-cvs
mailing list