mirror of git://gcc.gnu.org/git/gcc.git
re PR fortran/77260 (bogus warning with ENTRY in a function)
2016-08-22 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/77260 * gcc/fortran/trans-decl.c (generate_local_decl): Suppress warning for unused variable if symbol is entry point. 2016-08-22 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/77260 * gfortran.dg/pr77260_1.f90: New test. * gfortran.dg/pr77260_2.f90: Ditto. From-SVN: r239666
This commit is contained in:
parent
72f52f3081
commit
ad7a5a8fc5
|
|
@ -1,3 +1,10 @@
|
||||||
|
2016-08-22 Steven G. Kargl <kargl@gcc.gnu.org>
|
||||||
|
|
||||||
|
PR fortran/77260
|
||||||
|
* gcc/fortran/trans-decl.c (generate_local_decl): Suppress warning
|
||||||
|
for unused variable if symbol is entry point.
|
||||||
|
|
||||||
|
|
||||||
2016-08-19 Joseph Myers <joseph@codesourcery.com>
|
2016-08-19 Joseph Myers <joseph@codesourcery.com>
|
||||||
|
|
||||||
PR c/32187
|
PR c/32187
|
||||||
|
|
|
||||||
|
|
@ -5316,6 +5316,16 @@ generate_local_decl (gfc_symbol * sym)
|
||||||
}
|
}
|
||||||
else if (!sym->attr.use_assoc)
|
else if (!sym->attr.use_assoc)
|
||||||
{
|
{
|
||||||
|
/* Corner case: the symbol may be an entry point. At this point,
|
||||||
|
it may appear to be an unused variable. Suppress warning. */
|
||||||
|
bool enter = false;
|
||||||
|
gfc_entry_list *el;
|
||||||
|
|
||||||
|
for (el = sym->ns->entries; el; el=el->next)
|
||||||
|
if (strcmp(sym->name, el->sym->name) == 0)
|
||||||
|
enter = true;
|
||||||
|
|
||||||
|
if (!enter)
|
||||||
gfc_warning (OPT_Wunused_variable,
|
gfc_warning (OPT_Wunused_variable,
|
||||||
"Unused variable %qs declared at %L",
|
"Unused variable %qs declared at %L",
|
||||||
sym->name, &sym->declared_at);
|
sym->name, &sym->declared_at);
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,9 @@
|
||||||
|
2016-08-22 Steven G. Kargl <kargl@gcc.gnu.org>
|
||||||
|
|
||||||
|
PR fortran/77260
|
||||||
|
* gfortran.dg/pr77260_1.f90: New test.
|
||||||
|
* gfortran.dg/pr77260_2.f90: Ditto.
|
||||||
|
|
||||||
2016-08-22 Joseph Myers <joseph@codesourcery.com>
|
2016-08-22 Joseph Myers <joseph@codesourcery.com>
|
||||||
|
|
||||||
PR middle-end/77269
|
PR middle-end/77269
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
! { dg-do compile }
|
||||||
|
! { dg-options "-Wall" }
|
||||||
|
module foo
|
||||||
|
|
||||||
|
implicit none
|
||||||
|
|
||||||
|
private
|
||||||
|
public f1,f2
|
||||||
|
|
||||||
|
contains
|
||||||
|
|
||||||
|
integer function f1()
|
||||||
|
integer f2
|
||||||
|
f1=5
|
||||||
|
entry f2
|
||||||
|
f2=8
|
||||||
|
end function
|
||||||
|
end module
|
||||||
|
|
||||||
|
program test
|
||||||
|
use foo
|
||||||
|
implicit none
|
||||||
|
print *,f2()
|
||||||
|
end program
|
||||||
|
! { dg-final { cleanup-modules "foo" } }
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
! { dg-do compile }
|
||||||
|
! { dg-options "-Wall" }
|
||||||
|
module foo
|
||||||
|
|
||||||
|
implicit none
|
||||||
|
|
||||||
|
private
|
||||||
|
public f1,f2
|
||||||
|
|
||||||
|
contains
|
||||||
|
|
||||||
|
integer function f1()
|
||||||
|
integer f2
|
||||||
|
integer f3 ! { dg-warning "Unused variable" }
|
||||||
|
f1=5
|
||||||
|
entry f2
|
||||||
|
f2=8
|
||||||
|
end function
|
||||||
|
end module
|
||||||
|
|
||||||
|
program test
|
||||||
|
use foo
|
||||||
|
implicit none
|
||||||
|
print *,f2()
|
||||||
|
end program
|
||||||
|
! { dg-final { cleanup-modules "foo" } }
|
||||||
Loading…
Reference in New Issue