diff options
author | domob <domob@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-21 13:44:38 +0000 |
---|---|---|
committer | domob <domob@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-21 13:44:38 +0000 |
commit | 89ac8ba1010f80f10f55ffe9d9445a25163266af (patch) | |
tree | 3afbfb5397c9f4875f557b7dd7084ea182554630 /gcc/fortran/trans.h | |
parent | 8e3b5e90c9521674dbc02422831fbdc08673d034 (diff) | |
download | gcc-89ac8ba1010f80f10f55ffe9d9445a25163266af.tar.gz |
2010-07-21 Daniel Kraft <d@domob.eu>
* trans.h (gfc_get_return_label): Removed.
(gfc_generate_return): New method.
(gfc_trans_deferred_vars): Update gfc_wrapped_block rather than
returning a tree directly.
* trans-stmt.c (gfc_trans_return): Use `gfc_generate_return'.
(gfc_trans_block_construct): Update for new interface to
`gfc_trans_deferred_vars'.
* trans-decl.c (current_function_return_label): Removed.
(current_procedure_symbol): New variable.
(gfc_get_return_label): Removed.
(gfc_trans_deferred_vars): Update gfc_wrapped_block rather than
returning a tree directly.
(get_proc_result), (gfc_generate_return): New methods.
(gfc_generate_function_code): Clean up and do init/cleanup here
also with gfc_wrapped_block. Remove return-label but rather
return directly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162373 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fortran/trans.h')
-rw-r--r-- | gcc/fortran/trans.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/gcc/fortran/trans.h b/gcc/fortran/trans.h index db782c0a0ff..cbed52b5f87 100644 --- a/gcc/fortran/trans.h +++ b/gcc/fortran/trans.h @@ -408,9 +408,6 @@ tree gfc_build_label_decl (tree); Do not use if the function has an explicit result variable. */ tree gfc_get_fake_result_decl (gfc_symbol *, int); -/* Get the return label for the current function. */ -tree gfc_get_return_label (void); - /* Add a decl to the binding level for the current function. */ void gfc_add_decl_to_function (tree); @@ -456,6 +453,8 @@ void gfc_generate_function_code (gfc_namespace *); void gfc_generate_block_data (gfc_namespace *); /* Output a decl for a module variable. */ void gfc_generate_module_vars (gfc_namespace *); +/* Get the appropriate return statement for a procedure. */ +tree gfc_generate_return (void); struct GTY(()) module_htab_entry { const char *name; @@ -533,7 +532,7 @@ tree gfc_build_library_function_decl_with_spec (tree name, const char *spec, void gfc_process_block_locals (gfc_namespace*); /* Output initialization/clean-up code that was deferred. */ -tree gfc_trans_deferred_vars (gfc_symbol*, tree); +void gfc_trans_deferred_vars (gfc_symbol*, gfc_wrapped_block *); /* somewhere! */ tree pushdecl (tree); |