diff options
Diffstat (limited to 'gcc')
| -rw-r--r-- | gcc/gcc/elna-generic.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/gcc/elna-generic.cc b/gcc/gcc/elna-generic.cc index 34ae5ee..b527280 100644 --- a/gcc/gcc/elna-generic.cc +++ b/gcc/gcc/elna-generic.cc @@ -257,7 +257,7 @@ namespace elna::gcc { procedure->accept(this); } - if (unit->has_body()) + if (unit->entry_point.has_value()) { tree declaration_type = build_function_type_list(elna_int_type_node, elna_int_type_node, @@ -283,7 +283,7 @@ namespace elna::gcc DECL_ARGUMENTS(fndecl) = chainon(DECL_ARGUMENTS(fndecl), declaration_tree); parameter_type = TREE_CHAIN(parameter_type); } - visit_statements(unit->entry_point); + visit_statements(unit->entry_point->statements); tree set_result = build2(INIT_EXPR, void_type_node, DECL_RESULT(fndecl), integer_zero_node); tree return_stmt = build1(RETURN_EXPR, void_type_node, set_result); @@ -315,7 +315,7 @@ namespace elna::gcc { variable->accept(this); } - visit_statements(declaration->body.value().entry_point); + visit_statements(declaration->body.value().statements); if (declaration->body.value().return_expression != nullptr) { |
