Commit 14b693ba by Harald Anlauf Committed by Harald Anlauf

re PR fortran/88248 ([F18] Bogus warning about obsolescent feature: Labeled DO statement)

2019-02-14  Harald Anlauf  <anlauf@gmx.de>

	PR fortran/88248
	* symbol.c: Move check for labeled DO statement from
	gfc_define_st_label to gfc_reference_st_label.

	PR fortran/88248
	* gfortran.dg/pr88248.f90: New test.
	* gfortran.dg/f2018_obs.f90: Updated test.

From-SVN: r268895
parent 26a8c34e
2019-02-14 Harald Anlauf <anlauf@gmx.de>
PR fortran/88248
* symbol.c: Move check for labeled DO statement from
gfc_define_st_label to gfc_reference_st_label.
2019-02-14 Cesar Philippidis <cesar@codesourcery.com> 2019-02-14 Cesar Philippidis <cesar@codesourcery.com>
PR fortran/72715 PR fortran/72715
......
...@@ -2743,10 +2743,6 @@ gfc_define_st_label (gfc_st_label *lp, gfc_sl_type type, locus *label_locus) ...@@ -2743,10 +2743,6 @@ gfc_define_st_label (gfc_st_label *lp, gfc_sl_type type, locus *label_locus)
"DO termination statement which is not END DO" "DO termination statement which is not END DO"
" or CONTINUE with label %d at %C", labelno)) " or CONTINUE with label %d at %C", labelno))
return; return;
if (type == ST_LABEL_DO_TARGET
&& !gfc_notify_std (GFC_STD_F2018_OBS, "Labeled DO statement "
"at %L", label_locus))
return;
break; break;
default: default:
...@@ -2804,6 +2800,11 @@ gfc_reference_st_label (gfc_st_label *lp, gfc_sl_type type) ...@@ -2804,6 +2800,11 @@ gfc_reference_st_label (gfc_st_label *lp, gfc_sl_type type)
"Shared DO termination label %d at %C", labelno)) "Shared DO termination label %d at %C", labelno))
return false; return false;
if (type == ST_LABEL_DO_TARGET
&& !gfc_notify_std (GFC_STD_F2018_OBS, "Labeled DO statement "
"at %L", &gfc_current_locus))
return false;
if (lp->referenced != ST_LABEL_DO_TARGET) if (lp->referenced != ST_LABEL_DO_TARGET)
lp->referenced = type; lp->referenced = type;
rc = true; rc = true;
......
2019-02-14 Harald Anlauf <anlauf@gmx.de>
PR fortran/88248
* gfortran.dg/pr88248.f90: New test.
* gfortran.dg/f2018_obs.f90: Updated test.
2019-02-14 Tamar Christina <tamar.christina@arm.com> 2019-02-14 Tamar Christina <tamar.christina@arm.com>
* gcc.target/arm/pr88850.c: change options to additional option. * gcc.target/arm/pr88850.c: change options to additional option.
......
...@@ -19,8 +19,8 @@ program f2018_obs ...@@ -19,8 +19,8 @@ program f2018_obs
equivalence (a(10),b(1)) ! { dg-warning "obsolescent feature" } equivalence (a(10),b(1)) ! { dg-warning "obsolescent feature" }
do 99 i=1,10 do 99 i=1,10 ! { dg-warning "obsolescent feature" }
99 continue ! { dg-warning "obsolescent feature" } 99 continue
j = (/ 0, 1, 2, 3, 4, 0, 6, 7 /) j = (/ 0, 1, 2, 3, 4, 0, 6, 7 /)
forall (i=1:8, j(i) /= 0) ! { dg-warning "obsolescent feature" } forall (i=1:8, j(i) /= 0) ! { dg-warning "obsolescent feature" }
......
! { dg-do compile }
! { dg-options "-std=f2018" }
!
! PR88248 - [F18] Bogus warning about obsolescent feature: Labeled DO statement
!
program pr88248
character*80 text ! { dg-warning "Old-style character length" }
f(x) = x ! { dg-warning "Statement function" }
call foo (*99) ! { dg-warning "Alternate-return argument" }
data y / 1.0 / ! { dg-warning "DATA statement" }
goto (1,99) i+1 ! { dg-warning "Computed GOTO" }
! No warning should be printed below
goto 1
1 continue
open (10, err=99)
close (10, err=99)
backspace (10, err=99)
endfile (10, err=99)
rewind (10, err=99)
flush (10, err=99)
inquire (10, err=99)
read (*, end=99) text
99 continue
end
subroutine foobar ()
entry bar () ! { dg-warning "ENTRY statement" }
end subroutine foobar
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment