diff options
author | pault <pault@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-07-16 15:01:59 +0000 |
---|---|---|
committer | pault <pault@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-07-16 15:01:59 +0000 |
commit | d7b90372ccd501b958b79a5c9ae280bf8907bd7b (patch) | |
tree | 388dd87c2767bf52d5aa28790427ec7a5bbd6e9c /gcc/testsuite/gfortran.dg/generic_5.f90 | |
parent | 8ccaf1c3d45c2458aac4ea53802e5e3c1cb8111d (diff) | |
download | gcc-d7b90372ccd501b958b79a5c9ae280bf8907bd7b.tar.gz |
2006-07-16 Paul Thomas <pault@gcc.gnu.org>
PR fortran/28384
* trans-common.c (translate_common): If common_segment is NULL
emit error that common block does not exist.
PR fortran/20844
* io.c (check_io_constraints): It is an error if an ADVANCE
specifier appears without an explicit format.
PR fortran/28201
* resolve.c (resolve_generic_s): For a use_associated function,
do not search for an alternative symbol in the parent name
space.
PR fortran/20893
* resolve.c (resolve_elemental_actual): New function t combine
all the checks of elemental procedure actual arguments. In
addition, check of array valued optional args(this PR) has
been added.
(resolve_function, resolve_call): Remove parts that treated
elemental procedure actual arguments and call the above.
2006-07-16 Paul Thomas <pault@gcc.gnu.org>
PR fortran/20844
* gfortran.dg/io_constaints_2.f90: Add the test for ADVANCE
specifiers requiring an explicit format tag..
PR fortran/28201
* gfortran.dg/generic_5: New test.
PR fortran/20893
* gfortran.dg/elemental_optional_args_1.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@115499 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gfortran.dg/generic_5.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/generic_5.f90 | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/generic_5.f90 b/gcc/testsuite/gfortran.dg/generic_5.f90 new file mode 100644 index 00000000000..037dba27c65 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/generic_5.f90 @@ -0,0 +1,29 @@ +! { dg-do compile } +! Tests the patch for PR28201, in which the call to ice would cause an ICE +! because resolve.c(resolve_generic_s) would try to look in the parent +! namespace to see if the subroutine was part of a legal generic interface. +! In this case, there is nothing to test, hence the ICE. +! +! Contributed by Daniel Franke <franke.daniel@gmail.com> +! +! +MODULE ice_gfortran + INTERFACE ice + MODULE PROCEDURE ice_i + END INTERFACE + +CONTAINS + SUBROUTINE ice_i(i) + INTEGER, INTENT(IN) :: i + ! do nothing + END SUBROUTINE +END MODULE + +MODULE provoke_ice +CONTAINS + SUBROUTINE provoke + USE ice_gfortran + CALL ice(23.0) ! { dg-error "is not an intrinsic subroutine" } + END SUBROUTINE +END MODULE + |