This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/24705] ICE on assumed length character result



------- 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]