From: Ian Lance Taylor Date: Tue, 28 Mar 2023 20:01:28 +0000 (-0700) Subject: compiler: mark Call_expression multiple results as a result struct X-Git-Tag: basepoints/gcc-14~286 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=aa8f4242efc99f24de73c59d53996f28db28c13f;p=thirdparty%2Fgcc.git compiler: mark Call_expression multiple results as a result struct In https://go.dev/cl/343873 we stopped padding zero-sized trailing fields in functions that return multiple results where the last result is zero-sized. This CL makes the corresponding change on the caller side. The test case is https://go.dev/cl/479898. Fixes golang/go#55242 Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/479955 --- diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index 8c8025dec2e6..addef6f8f515 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -9ffd6e679ff0e3a908d0ec2ed5c6efa1de827c3f +63ba7dd52f2cc49dab4b70ac81309296a920d4dc The first line of this file holds the git revision number of the last merge done from the gofrontend repository. diff --git a/gcc/go/gofrontend/expressions.cc b/gcc/go/gofrontend/expressions.cc index 53901306ef7d..4ac55af74333 100644 --- a/gcc/go/gofrontend/expressions.cc +++ b/gcc/go/gofrontend/expressions.cc @@ -11267,6 +11267,7 @@ Call_expression::do_lower(Gogo* gogo, Named_object* function, Struct_type* st = Type::make_struct_type(sfl, loc); st->set_is_struct_incomparable(); + st->set_is_results_struct(); this->call_temp_ = Statement::make_temporary(st, NULL, loc); inserter->insert(this->call_temp_); }