aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/trans-decl.c
diff options
context:
space:
mode:
authorPaul Thomas <pault@gcc.gnu.org>2007-01-14 14:43:08 +0000
committerPaul Thomas <pault@gcc.gnu.org>2007-01-14 14:43:08 +0000
commitc89686a895de9490e7be5c47865cb5cd3fc0401e (patch)
treea4e352dd03599277713f5a6c685f160069c96b6c /gcc/fortran/trans-decl.c
parentacdc40dfd2305e16f92e15273dad1cc6d8bee32c (diff)
downloadgcc-c89686a895de9490e7be5c47865cb5cd3fc0401e.zip
gcc-c89686a895de9490e7be5c47865cb5cd3fc0401e.tar.gz
gcc-c89686a895de9490e7be5c47865cb5cd3fc0401e.tar.bz2
re PR fortran/30410 (Host association bug w/ EXTERNAL)
2007-01-14 Paul Thomas <pault@gcc.gnu.org> PR fortran/30410 * trans-decl.c (gfc_sym_mangled_function_id): Module, external symbols must not have the module name prepended. 2007-01-14 Paul Thomas <pault@gcc.gnu.org> PR fortran/30410 * gfortran.dg/external_procedures_2.f90: New test. From-SVN: r120771
Diffstat (limited to 'gcc/fortran/trans-decl.c')
-rw-r--r--gcc/fortran/trans-decl.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/fortran/trans-decl.c b/gcc/fortran/trans-decl.c
index 2a03416..44ccbcc 100644
--- a/gcc/fortran/trans-decl.c
+++ b/gcc/fortran/trans-decl.c
@@ -315,7 +315,8 @@ gfc_sym_mangled_function_id (gfc_symbol * sym)
char name[GFC_MAX_MANGLED_SYMBOL_LEN + 1];
if (sym->module == NULL || sym->attr.proc == PROC_EXTERNAL
- || (sym->module != NULL && sym->attr.if_source == IFSRC_IFBODY))
+ || (sym->module != NULL && (sym->attr.external
+ || sym->attr.if_source == IFSRC_IFBODY)))
{
if (strcmp (sym->name, "MAIN__") == 0
|| sym->attr.proc == PROC_INTRINSIC)