From: dfranke Date: Fri, 7 May 2010 15:36:45 +0000 (+0000) Subject: gcc/fortran/: X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=commitdiff_plain;h=65651d53b192cac5a1d600bc6deb56d50ec8ed03 gcc/fortran/: 2010-05-07 Daniel Franke PR fortran/40728 * intrinc.c (gfc_is_intrinsic): Do not prematurely mark symbol as external gcc/testsuite/: 2010-05-07 Daniel Franke 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 --- diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 4c42faac88e..97e002a1a19 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2010-05-07 Daniel Franke + + PR fortran/40728 + * intrinc.c (gfc_is_intrinsic): Do not prematurely mark symbol + as external + 2010-05-07 Jason Merrill * trans-expr.c (gfc_conv_procedure_call): Rename nullptr to null_ptr @@ -17,6 +23,7 @@ 2010-05-05 Daniel Franke + PR fortran/32331 * resolve.c (traverse_data_list): Rephrase error message for non-constant bounds in data-implied-do. 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; } diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 2ddbe951209..297ae761ddd 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2010-05-07 Daniel Franke + + 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. + 2010-05-07 Jason Merrill * g++.dg/cpp0x/nullptr20.C: Use sprintf. diff --git a/gcc/testsuite/gfortran.dg/coarray_1.f90 b/gcc/testsuite/gfortran.dg/coarray_1.f90 index ba10d64a3ef..7fd4c84240f 100644 --- a/gcc/testsuite/gfortran.dg/coarray_1.f90 +++ b/gcc/testsuite/gfortran.dg/coarray_1.f90 @@ -13,6 +13,6 @@ sync memory ! { dg-error "Fortran 2008:" } sync images(*) ! { dg-error "Fortran 2008:" } ! num_images is implicitly defined: -n = num_images() ! { dg-error "convert UNKNOWN to INTEGER" } +n = num_images() ! { dg-error "has no IMPLICIT type" } error stop 'stop' ! { dg-error "Fortran 2008:" } end