OSDN Git Service

gcc/fortran:
authordfranke <dfranke@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 9 Jul 2007 14:56:49 +0000 (14:56 +0000)
committerdfranke <dfranke@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 9 Jul 2007 14:56:49 +0000 (14:56 +0000)
2007-07-09  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/31129
        * trans-decl.c (generate_local_decl) Emit a warning if an unused
        parameter is found.

gcc/testsuite:
2007-07-09  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/31129
        * gfortran.dg/parameter_unused.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126486 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/fortran/ChangeLog
gcc/fortran/trans-decl.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/parameter_unused.f90 [new file with mode: 0644]

index 63b0b7c..70c4f83 100644 (file)
@@ -1,3 +1,9 @@
+2007-07-09  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/31129
+       * trans-decl.c (generate_local_decl) Emit a warning if an unused
+       parameter is found.
+
 2007-07-08  Daniel Franke  <franke.daniel@gmail.com>
 
        PR fortran/29876
index 09b5d9b..608b779 100644 (file)
@@ -3035,6 +3035,14 @@ generate_local_decl (gfc_symbol * sym)
       if (sym->attr.dummy && sym->backend_decl != NULL_TREE)
          TREE_NO_WARNING(sym->backend_decl) = 1;
     }
+  else if (sym->attr.flavor == FL_PARAMETER)
+    {
+      if (warn_unused_variable 
+           && !sym->attr.referenced
+           && !sym->attr.use_assoc)
+       gfc_warning ("unused parameter '%s' declared at %L", sym->name,
+                    &sym->declared_at);
+    }
 
   if (sym->attr.dummy == 1)
     {
index 6e61609..6c95f13 100644 (file)
@@ -1,3 +1,8 @@
+2007-07-09  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/31129
+       * gfortran.dg/parameter_unused.f90: New test.
+
 2007-07-09  Uros Bizjak  <ubizjak@gmail.com>
 
        PR tree-optimization/32681
diff --git a/gcc/testsuite/gfortran.dg/parameter_unused.f90 b/gcc/testsuite/gfortran.dg/parameter_unused.f90
new file mode 100644 (file)
index 0000000..7496169
--- /dev/null
@@ -0,0 +1,9 @@
+! { dg-do compile }
+! { dg-options "-Wunused" }
+!
+! PR fortran/31129 - No warning on unused parameters
+!
+program fred
+integer,parameter :: j = 9     ! { dg-warning "unused parameter" }
+end
+