diff options
author | fxcoudert <fxcoudert@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-11-03 14:51:51 +0000 |
---|---|---|
committer | fxcoudert <fxcoudert@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-11-03 14:51:51 +0000 |
commit | a2f97da76feac655cd6ef8f5d519efe69ec06687 (patch) | |
tree | 0b205366f000dcc61123d9d05537464c13b0f625 /gcc/fortran/parse.c | |
parent | c761351cc4891e38cf3ef25fd03b59e6c3901d61 (diff) | |
download | gcc-a2f97da76feac655cd6ef8f5d519efe69ec06687.tar.gz |
* gfortran.h: Shorten comment.
* trans-types.c (gfc_get_function_type): Allow argument to have
flavor FL_PROGRAM.
* trans-decl.c (gfc_sym_mangled_function_id): Mangle main program
name into MAIN__.
(build_function_decl): Fix comment.
* parse.c (main_program_symbol): Give the main program its proper
name, if any. Set its flavor to FL_PROGRAM.
(gfc_parse_file): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129869 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fortran/parse.c')
-rw-r--r-- | gcc/fortran/parse.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/fortran/parse.c b/gcc/fortran/parse.c index f60ea9a0057..3e20b78fba2 100644 --- a/gcc/fortran/parse.c +++ b/gcc/fortran/parse.c @@ -1237,14 +1237,14 @@ gfc_ascii_statement (gfc_statement st) /* Create a symbol for the main program and assign it to ns->proc_name. */ static void -main_program_symbol (gfc_namespace *ns) +main_program_symbol (gfc_namespace *ns, const char *name) { gfc_symbol *main_program; symbol_attribute attr; - gfc_get_symbol ("MAIN__", ns, &main_program); + gfc_get_symbol (name, ns, &main_program); gfc_clear_attr (&attr); - attr.flavor = FL_PROCEDURE; + attr.flavor = FL_PROGRAM; attr.proc = PROC_UNKNOWN; attr.subroutine = 1; attr.access = ACCESS_PUBLIC; @@ -3331,7 +3331,7 @@ loop: prog_locus = gfc_current_locus; push_state (&s, COMP_PROGRAM, gfc_new_block); - main_program_symbol(gfc_current_ns); + main_program_symbol(gfc_current_ns, gfc_new_block->name); accept_statement (st); add_global_program (); parse_progunit (ST_NONE); @@ -3373,7 +3373,7 @@ loop: prog_locus = gfc_current_locus; push_state (&s, COMP_PROGRAM, gfc_new_block); - main_program_symbol (gfc_current_ns); + main_program_symbol (gfc_current_ns, "MAIN__"); parse_progunit (st); break; } |