re PR fortran/48847 (Wrong "unused parameter" warning with interface block)
2012-02-05 Thomas König <tkoenig@gcc.gnu.org> PR fortran/48847 * trans-decl.c: Warn about unused dummy procedure arguments if -Wunused-dummy-argument is specified. Suppress middle-end warnings about procedure arguments. 2012-02-05 Thomas König <tkoenig@gcc.gnu.org> PR fortran/48847 * gfortran.dg/warn_unused_dummy_argument_3.f90: New test. From-SVN: r183916
This commit is contained in:
parent
83f42cad22
commit
d20597cb75
|
@ -1,3 +1,10 @@
|
|||
2012-02-05 Thomas König <tkoenig@gcc.gnu.org>
|
||||
|
||||
PR fortran/48847
|
||||
* trans-decl.c: Warn about unused dummy procedure arguments
|
||||
if -Wunused-dummy-argument is specified. Suppress middle-end
|
||||
warnings about procedure arguments.
|
||||
|
||||
2012-02-05 Paul Thomas <pault@gcc.gnu.org>
|
||||
|
||||
* trans-array.c (gfc_array_allocate): Zero memory for all class
|
||||
|
|
|
@ -4683,6 +4683,22 @@ generate_local_decl (gfc_symbol * sym)
|
|||
&& sym->ts.type == BT_CHARACTER && sym->ts.is_c_interop
|
||||
&& sym->ns->proc_name != NULL && sym->ns->proc_name->attr.is_bind_c)
|
||||
gfc_conv_scalar_char_value (sym, NULL, NULL);
|
||||
|
||||
/* Unused procedure passed as dummy argument. */
|
||||
if (sym->attr.flavor == FL_PROCEDURE)
|
||||
{
|
||||
if (!sym->attr.referenced)
|
||||
{
|
||||
if (gfc_option.warn_unused_dummy_argument)
|
||||
gfc_warning ("Unused dummy argument '%s' at %L", sym->name,
|
||||
&sym->declared_at);
|
||||
}
|
||||
|
||||
/* Silence bogus "unused parameter" warnings from the
|
||||
middle end. */
|
||||
if (sym->backend_decl != NULL_TREE)
|
||||
TREE_NO_WARNING (sym->backend_decl) = 1;
|
||||
}
|
||||
}
|
||||
|
||||
/* Make sure we convert the types of the derived types from iso_c_binding
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2012-02-05 Thomas König <tkoenig@gcc.gnu.org>
|
||||
|
||||
PR fortran/48847
|
||||
* gfortran.dg/warn_unused_dummy_argument_3.f90: New test.
|
||||
|
||||
2012-02-05 Paul Thomas <pault@gcc.gnu.org>
|
||||
|
||||
PR fortran/52102
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
! { dg-do compile }
|
||||
! { dg-options "-Wunused-dummy-argument -Wunused-parameter" }
|
||||
! PR 48847 - we used to generate a warning for g(), and none for h()
|
||||
program main
|
||||
contains
|
||||
function f(g,h)
|
||||
interface
|
||||
real function g()
|
||||
end function g
|
||||
end interface
|
||||
interface
|
||||
real function h() ! { dg-warning "Unused dummy argument" }
|
||||
end function h
|
||||
end interface
|
||||
real :: f
|
||||
f = g()
|
||||
end function f
|
||||
end program main
|
Loading…
Reference in New Issue