aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g77.f-torture
diff options
context:
space:
mode:
authorno-author <no-author@gcc.gnu.org>2003-04-06 03:36:42 +0000
committerno-author <no-author@gcc.gnu.org>2003-04-06 03:36:42 +0000
commitf92817764e0fe40c5418a4d3efd0f9ccdb381190 (patch)
tree79d831d69421ac4fd2f305edcc61482686bc06ea /gcc/testsuite/g77.f-torture
parentbf93592a83866cbdd8f6b31b9358ceb3c034a8dd (diff)
This commit was manufactured by cvs2svn to create branch
'tree-ssa-20020619-branch'. git-svn-id: https://gcc.gnu.org/svn/gcc/branches/tree-ssa-20020619-branch@65293 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/g77.f-torture')
-rw-r--r--gcc/testsuite/g77.f-torture/compile/20030326-1.f14
-rw-r--r--gcc/testsuite/g77.f-torture/compile/xformat.f3
-rw-r--r--gcc/testsuite/g77.f-torture/execute/10197.f15
-rw-r--r--gcc/testsuite/g77.f-torture/execute/select.f173
-rw-r--r--gcc/testsuite/g77.f-torture/noncompile/select_no_compile.f10
5 files changed, 215 insertions, 0 deletions
diff --git a/gcc/testsuite/g77.f-torture/compile/20030326-1.f b/gcc/testsuite/g77.f-torture/compile/20030326-1.f
new file mode 100644
index 00000000000..bcbc73c179b
--- /dev/null
+++ b/gcc/testsuite/g77.f-torture/compile/20030326-1.f
@@ -0,0 +1,14 @@
+C PR fortran/9793
+C larson@w6yx.stanford.edu
+C
+ integer a, b, c
+
+ c = -2147483648 / -1
+
+ a = 1
+ b = 0
+ c = a / b
+
+ print *, c
+
+ end
diff --git a/gcc/testsuite/g77.f-torture/compile/xformat.f b/gcc/testsuite/g77.f-torture/compile/xformat.f
new file mode 100644
index 00000000000..7e9001c4bc1
--- /dev/null
+++ b/gcc/testsuite/g77.f-torture/compile/xformat.f
@@ -0,0 +1,3 @@
+ PRINT 10, 2, 3
+10 FORMAT (I1, X, I1)
+ END
diff --git a/gcc/testsuite/g77.f-torture/execute/10197.f b/gcc/testsuite/g77.f-torture/execute/10197.f
new file mode 100644
index 00000000000..0fa81f67809
--- /dev/null
+++ b/gcc/testsuite/g77.f-torture/execute/10197.f
@@ -0,0 +1,15 @@
+ IMPLICIT NONE
+ LOGICAL ERROR
+ CHARACTER*12 FORM
+ DATA ERROR /.FALSE./
+ DATA FORM /' '/
+ OPEN(UNIT=60,ACCESS='DIRECT',STATUS='SCRATCH',RECL=255)
+ INQUIRE(UNIT=60,FORM=FORM)
+ IF (FORM.EQ.'UNFORMATTED') THEN
+ ERROR = .FALSE.
+ ELSE
+ ERROR = .TRUE.
+ ENDIF
+ CLOSE(UNIT=60)
+ IF (ERROR) CALL ABORT
+ END
diff --git a/gcc/testsuite/g77.f-torture/execute/select.f b/gcc/testsuite/g77.f-torture/execute/select.f
new file mode 100644
index 00000000000..f1024330a71
--- /dev/null
+++ b/gcc/testsuite/g77.f-torture/execute/select.f
@@ -0,0 +1,173 @@
+C integer byte case with integer byte parameters as case(s)
+ subroutine ib
+ integer *1 a /1/
+ integer *1 one,two,three
+ parameter (one=1,two=2,three=3)
+ select case (a)
+ case (one)
+ case (two)
+ call abort
+ case (three)
+ call abort
+ case default
+ call abort
+ end select
+ print*,'normal ib'
+ end
+C integer halfword case with integer halfword parameters
+ subroutine ih
+ integer *2 a /1/
+ integer *2 one,two,three
+ parameter (one=1,two=2,three=3)
+ select case (a)
+ case (one)
+ case (two)
+ call abort
+ case (three)
+ call abort
+ case default
+ call abort
+ end select
+ print*,'normal ih'
+ end
+C integer case with integer parameters
+ subroutine iw
+ integer *4 a /1/
+ integer *4 one,two,three
+ parameter (one=1,two=2,three=3)
+ select case (a)
+ case (one)
+ case (two)
+ call abort
+ case (three)
+ call abort
+ case default
+ call abort
+ end select
+ print*,'normal iw'
+ end
+C integer double case with integer double parameters
+ subroutine id
+ integer *8 a /1/
+ integer *8 one,two,three
+ parameter (one=1,two=2,three=3)
+ select case (a)
+ case (one)
+ case (two)
+ call abort
+ case (three)
+ call abort
+ case default
+ call abort
+ end select
+ print*,'normal id'
+ end
+C integer byte select with integer case
+ subroutine ib_mixed
+ integer*1 s /1/
+ select case (s)
+ case (1)
+ case (2)
+ call abort
+ end select
+ print*,'ib ok'
+ end
+C integer halfword with integer case
+ subroutine ih_mixed
+ integer*2 s /1/
+ select case (s)
+ case (1)
+ case default
+ call abort
+ end select
+ print*,'ih ok'
+ end
+C integer word with integer case
+ subroutine iw_mixed
+ integer s /5/
+ select case (s)
+ case (1)
+ call abort
+ case (2)
+ call abort
+ case (3)
+ call abort
+ case (4)
+ call abort
+ case (5)
+C
+ case (6)
+ call abort
+ case default
+ call abort
+ end select
+ print*,'iw ok'
+ end
+C integer doubleword with integer case
+ subroutine id_mixed
+ integer *8 s /1024/
+ select case (s)
+ case (1)
+ call abort
+ case (1023)
+ call abort
+ case (1025)
+ call abort
+ case (1024)
+C
+ end select
+ print*,'i8 ok'
+ end
+ subroutine l1_mixed
+ logical*1 s /.TRUE./
+ select case (s)
+ case (.TRUE.)
+ case (.FALSE.)
+ call abort
+ end select
+ print*,'l1 ok'
+ end
+ subroutine l2_mixed
+ logical*2 s /.FALSE./
+ select case (s)
+ case (.TRUE.)
+ call abort
+ case (.FALSE.)
+ end select
+ print*,'lh ok'
+ end
+ subroutine l4_mixed
+ logical*4 s /.TRUE./
+ select case (s)
+ case (.FALSE.)
+ call abort
+ case (.TRUE.)
+ end select
+ print*,'lw ok'
+ end
+ subroutine l8_mixed
+ logical*8 s /.TRUE./
+ select case (s)
+ case (.TRUE.)
+ case (.FALSE.)
+ call abort
+ end select
+ print*,'ld ok'
+ end
+C main
+C -- regression cases
+ call ib
+ call ih
+ call iw
+ call id
+C -- new functionality
+ call ib_mixed
+ call ih_mixed
+ call iw_mixed
+ call id_mixed
+ end
+
+
+
+
+
diff --git a/gcc/testsuite/g77.f-torture/noncompile/select_no_compile.f b/gcc/testsuite/g77.f-torture/noncompile/select_no_compile.f
new file mode 100644
index 00000000000..f7dad339a81
--- /dev/null
+++ b/gcc/testsuite/g77.f-torture/noncompile/select_no_compile.f
@@ -0,0 +1,10 @@
+ integer*1 one
+ integer*2 two
+ parameter (one=1)
+ parameter (two=2)
+ select case (I)
+ case (one)
+ case (two)
+ end select
+ end
+