re PR go/80226 (ICE gimple-expr.c:474 on Go function returning multiple empty struct/array values)
PR go/80226 * go-gcc.cc (Gcc_backend::return_statement): Check for void_type_node when checking result size. From-SVN: r246553
This commit is contained in:
parent
0c6b03b515
commit
1f599d751e
|
@ -1,3 +1,9 @@
|
|||
2017-03-28 Than McIntosh <thanm@google.com>
|
||||
|
||||
PR go/80226
|
||||
* go-gcc.cc (Gcc_backend::return_statement): Check for
|
||||
void_type_node when checking result size.
|
||||
|
||||
2017-02-20 Ian Lance Taylor <iant@golang.org>
|
||||
|
||||
PR go/79642
|
||||
|
|
|
@ -2081,7 +2081,8 @@ Gcc_backend::return_statement(Bfunction* bfunction,
|
|||
// If the result size is zero bytes, we have set the function type
|
||||
// to have a result type of void, so don't return anything.
|
||||
// See the function_type method.
|
||||
if (int_size_in_bytes(TREE_TYPE(result)) == 0)
|
||||
tree res_type = TREE_TYPE(result);
|
||||
if (res_type == void_type_node || int_size_in_bytes(res_type) == 0)
|
||||
{
|
||||
tree stmt_list = NULL_TREE;
|
||||
for (std::vector<Bexpression*>::const_iterator p = vals.begin();
|
||||
|
|
Loading…
Reference in New Issue