aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorPaul Thomas <pault@gcc.gnu.org>2009-06-11 20:11:59 +0000
committerPaul Thomas <pault@gcc.gnu.org>2009-06-11 20:11:59 +0000
commitabeab93869b150cb26b4267d14e3362dadb0a8be (patch)
tree84a4f811b1cf5dfc12a4245722cba5b630981ecf /gcc/testsuite
parent5514b0f3df6c51607ad1bb941967aafe149c77b3 (diff)
downloadgcc-abeab93869b150cb26b4267d14e3362dadb0a8be.zip
gcc-abeab93869b150cb26b4267d14e3362dadb0a8be.tar.gz
gcc-abeab93869b150cb26b4267d14e3362dadb0a8be.tar.bz2
re PR fortran/40402 (Problem with data statement involving structure constructors containing non-initialisation expressions)
2009-06-11 Paul Thomas <pault@gcc.gnu.org> PR fortran/40402 * resolve.c (next_data_value): It is an error if the value is not constant. 2009-06-11 Paul Thomas <pault@gcc.gnu.org> PR fortran/40402 * gfortran.dg/data_value_1.f90: New test. From-SVN: r148396
Diffstat (limited to 'gcc/testsuite')
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/data_value_1.f9014
2 files changed, 19 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 9a36bad..d49243f 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2009-06-11 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/40402
+ * gfortran.dg/data_value_1.f90: New test.
+
2009-06-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
PR testsuite/39831
diff --git a/gcc/testsuite/gfortran.dg/data_value_1.f90 b/gcc/testsuite/gfortran.dg/data_value_1.f90
new file mode 100644
index 0000000..ea05a91
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/data_value_1.f90
@@ -0,0 +1,14 @@
+! { dg-do compile }
+! Test the fix for PR40402, in which it was not detected that X
+! is not a constant and so the DATA statement did not have
+! a constant value expression.
+!
+! Contributed by Philippe Marguinaud <philippe.marguinaud@meteo.fr>
+!
+ TYPE POINT
+ REAL :: X
+ ENDTYPE
+ TYPE(POINT) :: P
+ DATA P / POINT(1.+X) / ! { dg-error "non-constant DATA value" }
+ print *, p
+ END