)]}' { "commit": "01cb2b5e69a2d08ef3cc1ea023c22ed9b79f5114", "tree": "df7c384c9e2d4d8fd76f56058e6a6f25e14170c7", "parents": [ "cad187fe3aceb2a7d964b64c70dfa8c8ad24ce65" ], "author": { "name": "Ian Lance Taylor", "email": "iant@golang.org", "time": "Tue Jun 29 12:53:02 2021 -0700" }, "committer": { "name": "Ian Lance Taylor", "email": "iant@golang.org", "time": "Tue Jun 29 20:43:22 2021 +0000" }, "message": "compiler: don\u0027t generate temporaries for composite literals\n\nWe were generating temporaries for composite literals when a\nconversion to interface type was required. However, Cherry\u0027s\nhttps://golang.org/cl/176459 changed the compiler to insert explicit\ntype conversions. And those explicit type conversions insert the\nrequired temporaries in Type_conversion_expression::do_flatten.\nSo in practice the composite literal do_flatten methods would never\ninsert temporaries, as the values they see would always be multi_eval_safe.\nSo just remove the unnecessary do_flatten methods.\n\nChange-Id: I66975b7ddc763f0cf93a6b56efede10bca3d3765\nReviewed-on: https://go-review.googlesource.com/c/gofrontend/+/331691\nTrust: Ian Lance Taylor \u003ciant@golang.org\u003e\nReviewed-by: Than McIntosh \u003cthanm@google.com\u003e\nReviewed-by: Cherry Mui \u003ccherryyz@google.com\u003e\n", "tree_diff": [ { "type": "modify", "old_id": "94342b2f9b838249471f29463ed1b243a0208c4c", "old_mode": 33188, "old_path": "go/expressions.cc", "new_id": "a0472acc2096001d9834802711a50eafe97fe691", "new_mode": 33188, "new_path": "go/expressions.cc" }, { "type": "modify", "old_id": "e3747cc65d767e73ea7981c7b4fc3d7bc3c435e0", "old_mode": 33188, "old_path": "go/expressions.h", "new_id": "57c974d3c70b75c102d92fa30340076ed418c87e", "new_mode": 33188, "new_path": "go/expressions.h" } ] }