aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorTobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>2004-05-15 20:10:06 +0200
committerTobias Schlüter <tobi@gcc.gnu.org>2004-05-15 20:10:06 +0200
commitfeb357a3360f03fa3439b437c0d255be0c14e54b (patch)
treee63b96a94a55aed18f6081e23cd2261a095ebb00 /gcc
parentd663434b6cd9ae8cbaac50a8c1dcff317594184d (diff)
downloadgcc-feb357a3360f03fa3439b437c0d255be0c14e54b.zip
gcc-feb357a3360f03fa3439b437c0d255be0c14e54b.tar.gz
gcc-feb357a3360f03fa3439b437c0d255be0c14e54b.tar.bz2
re PR fortran/13826 (Derived types in DATA statements not PARAMETERs)
testsuite: PR fortran/13826 PR fortran/13940 * gfortran.fortran-torture/compile/data_1.f90: New test. (add second test) fortran: * primary.c (match_boz_constant): Use gfc_notify_std() for issuing a warning or an error. From-SVN: r81892
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/primary.c9
-rw-r--r--gcc/testsuite/ChangeLog1
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/compile/data_1.f904
4 files changed, 16 insertions, 3 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 16ea447..549b82d 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,5 +1,10 @@
2004-05-15 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
+ * primary.c (match_boz_constant): Use gfc_notify_std() for
+ issuing a warning or an error.
+
+2004-05-15 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
+
PR fortran/13826
* primary.c (match_structure_constructor): Rename ...
(gfc_match_structure_constructor): ... to this. Make non-static.
diff --git a/gcc/fortran/primary.c b/gcc/fortran/primary.c
index d10a462..0e7e7e7 100644
--- a/gcc/fortran/primary.c
+++ b/gcc/fortran/primary.c
@@ -255,9 +255,12 @@ match_boz_constant (gfc_expr ** result)
rname = "octal";
break;
case 'x':
- if (pedantic)
- gfc_warning_now ("Hexadecimal constant at %C uses non-standard "
- "syntax. Use \"Z\" instead.");
+ if (pedantic
+ && (gfc_notify_std (GFC_STD_GNU, "Extension: Hexadecimal "
+ "constant at %C uses non-standard syntax.")
+ == FAILURE))
+ goto backup;
+
/* Fall through. */
case 'z':
radix = 16;
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index d23aed2..c1a37d6 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,6 +1,7 @@
2004-05-15 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/13826
+ PR fortran/13940
* gfortran.fortran-torture/compile/data_1.f90: New test.
2004-05-15 Ulrich Weigand <uweigand@de.ibm.com>
diff --git a/gcc/testsuite/gfortran.fortran-torture/compile/data_1.f90 b/gcc/testsuite/gfortran.fortran-torture/compile/data_1.f90
index fa8ab9f..e3d65ef 100644
--- a/gcc/testsuite/gfortran.fortran-torture/compile/data_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/compile/data_1.f90
@@ -5,3 +5,7 @@ END TYPE
TYPE(a) :: y
DATA y /a(1.)/ ! used to give an error about non-PARAMETER
END
+! this tests the fix for PR 13940
+SUBROUTINE a
+DATA i /x'f95f95f9'/
+END