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
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@262533 138bc75d-0d04-0410-961f-82ee72b054a4