diff options
author | Tobias Burnus <burnus@gcc.gnu.org> | 2013-07-17 14:57:41 +0200 |
---|---|---|
committer | Tobias Burnus <burnus@gcc.gnu.org> | 2013-07-17 14:57:41 +0200 |
commit | bdb4f6ce2febef65e8e6b1a0d9e921b2061edac8 (patch) | |
tree | ccfe0a46201e28b7ac2a0161d259c2f552ad775b /gcc | |
parent | a1259a13026fb572411d29b13318264e2d087346 (diff) | |
download | gcc-bdb4f6ce2febef65e8e6b1a0d9e921b2061edac8.zip gcc-bdb4f6ce2febef65e8e6b1a0d9e921b2061edac8.tar.gz gcc-bdb4f6ce2febef65e8e6b1a0d9e921b2061edac8.tar.bz2 |
[multiple changes]
2013-07-17 Mikael Morin <mikael@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/57895
* match.c (gfc_match_name): Ensure that the error
message regarding -fdollar-ok gets printed.
(gfc_match_common): Avoid multiple freeing.
2013-07-17 Tobias Burnus <burnus@net-b.de>
PR fortran/57895
* gfortran.dg/dollar_sym_3.f: New.
* gfortran.dg/dollar_sym_1.f90: Update dg-error.
From-SVN: r201008
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/fortran/ChangeLog | 12 | ||||
-rw-r--r-- | gcc/fortran/match.c | 8 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/dollar_sym_1.f90 | 6 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/dollar_sym_3.f | 10 |
5 files changed, 31 insertions, 11 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 0013101..6c977b9 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,11 @@ +2013-07-17 Mikael Morin <mikael@gcc.gnu.org> + Tobias Burnus <burnus@net-b.de> + + PR fortran/57895 + * match.c (gfc_match_name): Ensure that the error + message regarding -fdollar-ok gets printed. + (gfc_match_common): Avoid multiple freeing. + 2013-07-16 Tobias Burnus <burnus@net-b.de> PR fortran/57912 @@ -149,7 +157,7 @@ PR fortran/37336 * trans-decl.c (init_intent_out_dt): Call finalizer - when approriate. + when appropriate. 2013-06-08 Tobias Burnus <burnus@net-b.de> @@ -650,7 +658,7 @@ 2013-04-08 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/56782 - * frontend-passes.c (callback_reduction): Dont't do + * frontend-passes.c (callback_reduction): Don't do any simplification if there is only a single element which has an iterator. diff --git a/gcc/fortran/match.c b/gcc/fortran/match.c index 2533584..7f30156 100644 --- a/gcc/fortran/match.c +++ b/gcc/fortran/match.c @@ -556,8 +556,8 @@ gfc_match_name (char *buffer) if (c == '$' && !gfc_option.flag_dollar_ok) { - gfc_error ("Invalid character '$' at %C. Use -fdollar-ok to allow it " - "as an extension"); + gfc_fatal_error ("Invalid character '$' at %L. Use -fdollar-ok to allow " + "it as an extension", &old_loc); return MATCH_ERROR; } @@ -4520,10 +4520,6 @@ syntax: gfc_syntax_error (ST_COMMON); cleanup: - if (old_blank_common) - old_blank_common->common_next = NULL; - else - gfc_current_ns->blank_common.head = NULL; gfc_free_array_spec (as); return MATCH_ERROR; } diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 75f75de..2d6ece4 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2013-07-17 Tobias Burnus <burnus@net-b.de> + + PR fortran/57895 + * gfortran.dg/dollar_sym_3.f: New. + * gfortran.dg/dollar_sym_1.f90: Update dg-error. + 2013-07-16 Iain Sandoe <iain@codesourcery.com> PR target/55654 diff --git a/gcc/testsuite/gfortran.dg/dollar_sym_1.f90 b/gcc/testsuite/gfortran.dg/dollar_sym_1.f90 index 37f0f88..6c0dfcb 100644 --- a/gcc/testsuite/gfortran.dg/dollar_sym_1.f90 +++ b/gcc/testsuite/gfortran.dg/dollar_sym_1.f90 @@ -3,7 +3,7 @@ ! Variable names containing $ signs ! REAL*4 PLT$C_HOUSTPIX ! { dg-error "Invalid character '\\$'" } - INTEGER PLT$C_COMMAND ! { dg-error "Invalid character '\\$'" } - PARAMETER (PLT$B_OPC=0) ! { dg-error "Invalid character '\\$'" } - common /abc$def/ PLT$C_HOUSTPIX, PLT$C_COMMAND ! { dg-error "Invalid character '\\$'" } + INTEGER PLT$C_COMMAND ! Unreachable as the error above is now fatal + PARAMETER (PLT$B_OPC=0) ! Unreachable as the error above is now fatal + common /abc$def/ PLT$C_HOUSTPIX, PLT$C_COMMAND ! Unreachable as the error above is now fatal end diff --git a/gcc/testsuite/gfortran.dg/dollar_sym_3.f b/gcc/testsuite/gfortran.dg/dollar_sym_3.f new file mode 100644 index 0000000..7cf2047 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/dollar_sym_3.f @@ -0,0 +1,10 @@ +! { dg-do compile } +! +! PR fortran/57895 +! +! Contributed by Vittorio Zecca +! +c Segmentation fault in gfc_restore_last_undo_checkpoint + COMMON RADE3155V62$JUTMU9L9E(3,3,3), LADE314JUTMP9 ! { dg-error "Invalid character '\\$' at .1.. Use -fdollar-ok to allow it as an extension" } + +LHEDDJNTMP9L(3,3,3) + end |