summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/class_30.f90
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gfortran.dg/class_30.f90')
-rw-r--r--gcc/testsuite/gfortran.dg/class_30.f9021
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/class_30.f90 b/gcc/testsuite/gfortran.dg/class_30.f90
new file mode 100644
index 000000000..f2cedcb97
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/class_30.f90
@@ -0,0 +1,21 @@
+! { dg-do compile }
+!
+! PR fortran/46244 (comments 7 to 9)
+!
+! gfortran accepted CLASS in bind(C) and SEQUENCE types
+!
+type :: t
+ integer :: i
+end type t
+
+type t2
+ sequence
+ class(t), pointer :: x ! { dg-error "Polymorphic component x at .1. in SEQUENCE or BIND" }
+end type t2
+
+type, bind(C):: t3
+ class(t), pointer :: y
+ ! { dg-warning "may not be C interoperable" "" { target *-*-* } 17 }
+ ! { dg-error "Polymorphic component y at .1. in SEQUENCE or BIND" "" { target *-*-* } 17 }
+end type t3
+end