From d7b90372ccd501b958b79a5c9ae280bf8907bd7b Mon Sep 17 00:00:00 2001
From: pault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Sun, 16 Jul 2006 15:01:59 +0000
Subject: 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
---
 gcc/testsuite/gfortran.dg/generic_5.f90 | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)
 create mode 100644 gcc/testsuite/gfortran.dg/generic_5.f90

(limited to 'gcc/testsuite/gfortran.dg/generic_5.f90')

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
+
-- 
cgit v1.2.1