diff options
author | dfranke <dfranke@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-05-07 15:36:45 +0000 |
---|---|---|
committer | dfranke <dfranke@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-05-07 15:36:45 +0000 |
commit | 99bb75090187e4da6840f5b1c273d8047244c440 (patch) | |
tree | 2c105858d2fbab3d0a32475b4724e1ab345ebbf8 /gcc/fortran/intrinsic.c | |
parent | 99178f8c54f0ccde9e76d38b290a1b48eebbf34b (diff) | |
download | gcc-99bb75090187e4da6840f5b1c273d8047244c440.tar.gz |
gcc/fortran/:
2010-05-07 Daniel Franke <franke.daniel@gmail.com>
PR fortran/40728
* intrinc.c (gfc_is_intrinsic): Do not prematurely mark symbol
as external
gcc/testsuite/:
2010-05-07 Daniel Franke <franke.daniel@gmail.com>
PR fortran/40728
* gfortran.dg/coarray_1.f90: Fixed error message.
* gfortran.dg/selected_char_kind_3.f90: Fixed error message.
* gfortran.dg/intrinsic_std_1.f90: Fixed bogus message.
* gfortran.dg/intrinsic_std_5.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159155 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fortran/intrinsic.c')
-rw-r--r-- | gcc/fortran/intrinsic.c | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/gcc/fortran/intrinsic.c b/gcc/fortran/intrinsic.c index 34afabc3d22..e8041eb9b9a 100644 --- a/gcc/fortran/intrinsic.c +++ b/gcc/fortran/intrinsic.c @@ -956,17 +956,14 @@ gfc_is_intrinsic (gfc_symbol* sym, int subroutine_flag, locus loc) /* See if this intrinsic is allowed in the current standard. */ if (gfc_check_intrinsic_standard (isym, &symstd, false, loc) == FAILURE) { - if (sym->attr.proc == PROC_UNKNOWN) - { - if (gfc_option.warn_intrinsics_std) - gfc_warning_now ("The intrinsic '%s' at %L is not included in the" - " selected standard but %s and '%s' will be" - " treated as if declared EXTERNAL. Use an" - " appropriate -std=* option or define" - " -fall-intrinsics to allow this intrinsic.", - sym->name, &loc, symstd, sym->name); - gfc_add_external (&sym->attr, &loc); - } + if (sym->attr.proc == PROC_UNKNOWN + && gfc_option.warn_intrinsics_std) + gfc_warning_now ("The intrinsic '%s' at %L is not included in the" + " selected standard but %s and '%s' will be" + " treated as if declared EXTERNAL. Use an" + " appropriate -std=* option or define" + " -fall-intrinsics to allow this intrinsic.", + sym->name, &loc, symstd, sym->name); return false; } |