2013-11-01 Paul Thomas <pault@gcc.gnu.org>
authorpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 1 Nov 2013 06:56:41 +0000 (06:56 +0000)
committerpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 1 Nov 2013 06:56:41 +0000 (06:56 +0000)
PR fortran/57893
* gfortran.dg/unlimited_polymorphic_13.f90 : Break up select
type block.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204286 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/unlimited_polymorphic_13.f90

index b231dc8..03ad579 100644 (file)
@@ -1,3 +1,9 @@
+2013-11-01  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/57893
+       * gfortran.dg/unlimited_polymorphic_13.f90 : Break up select
+       type block.
+
 2013-10-31  Jakub Jelinek  <jakub@redhat.com>
 
        * g++.dg/gomp/simd-1.C: New test.
index 10f6445..0e27b17 100644 (file)
@@ -37,14 +37,22 @@ contains
     end select
 
     if (storage_size(o) /= sz) call abort()
+
+! Break up the SELECT TYPE to pre-empt collisions in the value of 'cn'
     select type (o)
       type is (complex(c1))
         if (storage_size(o) /= sz) call abort()
+    end select
+    select type (o)
       type is (complex(c2))
         if (storage_size(o) /= sz) call abort()
+    end select
+    select type (o)
       type is (complex(c3))
         if (storage_size(o) /= sz) call abort()
-      type is (complex(c4))
+     end select
+    select type (o)
+     type is (complex(c4))
         if (storage_size(o) /= sz) call abort()
     end select
   end subroutine s