re PR fortran/66461 (ICE on missing end program in fixed source)

2016-05-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/66461
	* scanner.c (gfc_next_char_literal): Clear end_flag when adjusting
	current locus back to old_locus.

	* gfortran.dg/unexpected_eof.f: New test

From-SVN: r236627
This commit is contained in:
Jerry DeLisle 2016-05-24 04:15:39 +00:00
parent 4ddcdbf912
commit 85d5c27d78
4 changed files with 20 additions and 0 deletions

View file

@ -1,3 +1,9 @@
2016-05-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/66461
* scanner.c (gfc_next_char_literal): Clear end_flag when adjusting
current locus back to old_locus.
2016-05-20 Jakub Jelinek <jakub@redhat.com>
PR fortran/71204

View file

@ -1556,6 +1556,7 @@ restart:
not_continuation:
c = '\n';
gfc_current_locus = old_loc;
end_flag = 0;
done:
if (c == '\n')

View file

@ -1,3 +1,8 @@
2016-05-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/66461
* gfortran.dg/unexpected_eof.f: New test
2016-05-23 Michael Meissner <meissner@linux.vnet.ibm.com>
Kelvin Nilsen <kelvin@gcc.gnu.org>

View file

@ -0,0 +1,8 @@
! { dg-do compile }
! PR66461 ICE on missing end program in fixed source
program p
integer x(2)
x = -1
if ( x(1) < 0 .or.
& x(2) < 0 ) print *, x
! { dg-error "Unexpected end of file" "" { target *-*-* } 0 }