This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/24705] ICE on assumed length character result
- From: "pault at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 21 Nov 2005 16:06:03 -0000
- Subject: [Bug fortran/24705] ICE on assumed length character result
- References: <bug-24705-87@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #3 from pault at gcc dot gnu dot org 2005-11-21 16:06 -------
Subject: Bug 24705
Author: pault
Date: Mon Nov 21 16:05:58 2005
New Revision: 107310
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=107310
Log:
2005-11-21 Paul Thomas <pault@gcc.gnu.org>
PR fortran/24223
* resolve.c (resolve_contained_fntype) Error if an internal
function is assumed character length.
PR fortran/24705
* trans-decl.c (gfc_create_module_variable) Skip ICE in
when backend decl has been built and the symbol is marked
as being in an equivalence statement.
2005-11-21 Paul Thomas <pault@gcc.gnu.org
PR fortran/24223
* gfortran.dg/substring_equivalence.f90: New test.
PR fortran/24705
* gfortran.dg/auto_internal_assumed.f90: New test.
Added:
trunk/gcc/testsuite/gfortran.dg/auto_internal_assumed.f90 (with props)
trunk/gcc/testsuite/gfortran.dg/substring_equivalence.f90 (with props)
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/resolve.c
trunk/gcc/fortran/trans-decl.c
trunk/gcc/testsuite/ChangeLog
Added: trunk/gcc/testsuite/gfortran.dg/auto_internal_assumed.f90
URL:
http://gcc.gnu.org/viewcvs/trunk/gcc/testsuite/gfortran.dg/auto_internal_assumed.f90?root=gcc&view=auto&rev=107310
==============================================================================
--- trunk/gcc/testsuite/gfortran.dg/auto_internal_assumed.f90 (added)
+++ trunk/gcc/testsuite/gfortran.dg/auto_internal_assumed.f90 Mon Nov 21
16:05:58 2005
@@ -1,0 +1,13 @@
+! { dg-do compile }
+! Test fix of PR24705 - ICE on assumed character length
+! internal function.
+!
+character (6) :: c
+ c = f1 () ! { dg-error "must not be assumed length" }
+ if (c .ne. 'abcdef') call abort
+contains
+ function f1 ()
+ character (*) :: f1
+ f1 = 'abcdef'
+ end function f1
+end
Propchange: trunk/gcc/testsuite/gfortran.dg/auto_internal_assumed.f90
('svn:executable' added)
Added: trunk/gcc/testsuite/gfortran.dg/substring_equivalence.f90
URL:
http://gcc.gnu.org/viewcvs/trunk/gcc/testsuite/gfortran.dg/substring_equivalence.f90?root=gcc&view=auto&rev=107310
==============================================================================
--- trunk/gcc/testsuite/gfortran.dg/substring_equivalence.f90 (added)
+++ trunk/gcc/testsuite/gfortran.dg/substring_equivalence.f90 Mon Nov 21
16:05:58 2005
@@ -1,0 +1,8 @@
+! { dg-do compile }
+! Tests fix for PR24223 - ICE on equivalence staement.
+!
+module FLAGS
+ character(len=5) :: Encodings
+ character :: at, dev
+ equivalence ( encodings(1:1),at ), ( encodings(2:2),dev)
+end module FLAGS
Propchange: trunk/gcc/testsuite/gfortran.dg/substring_equivalence.f90
('svn:executable' added)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24705