]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR fortran/53655 ([F03] "default initializer" warnings)
authorJanus Weil <janus@gcc.gnu.org>
Tue, 20 Aug 2013 14:16:26 +0000 (16:16 +0200)
committerJanus Weil <janus@gcc.gnu.org>
Tue, 20 Aug 2013 14:16:26 +0000 (16:16 +0200)
2013-08-20  Janus Weil  <janus@gcc.gnu.org>

PR fortran/53655
* trans-decl.c (generate_local_decl): Check if type has any components.

2013-08-20  Janus Weil  <janus@gcc.gnu.org>

PR fortran/53655
* gfortran.dg/intent_out_8.f90: New.

From-SVN: r201884

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

index 53e446e0015adfbf901a8019a784b5c5d822d989..fde23e5fb166d383fe9efbb23abf7a4b013017f4 100644 (file)
@@ -1,3 +1,8 @@
+2013-08-20  Janus Weil  <janus@gcc.gnu.org>
+
+       PR fortran/53655
+       * trans-decl.c (generate_local_decl): Check if type has any components.
+
 2013-08-19  Janus Weil  <janus@gcc.gnu.org>
 
        PR fortran/46271
index 1708931660241315e029bfe6f7e62470e0e8a4d3..c2c736e1c66ed0e1a3212568c997b4f125e54f13 100644 (file)
@@ -4745,7 +4745,8 @@ generate_local_decl (gfc_symbol * sym)
                gfc_warning ("Dummy argument '%s' at %L was declared "
                             "INTENT(OUT) but was not set",  sym->name,
                             &sym->declared_at);
-             else if (!gfc_has_default_initializer (sym->ts.u.derived))
+             else if (!gfc_has_default_initializer (sym->ts.u.derived)
+                      && !sym->ts.u.derived->attr.zero_comp)
                gfc_warning ("Derived-type dummy argument '%s' at %L was "
                             "declared INTENT(OUT) but was not set and "
                             "does not have a default initializer",
index f05e06808b010f20d8f823c51e23f3f20680e0d1..8b4e42f5de24f4c44909bb362fd95c1dcde130f6 100644 (file)
@@ -1,3 +1,8 @@
+2013-08-20  Janus Weil  <janus@gcc.gnu.org>
+
+       PR fortran/53655
+       * gfortran.dg/intent_out_8.f90: New.
+
 2013-08-20  Teresa Johnson  <tejohnson@google.com>
 
        PR rtl-optimizations/57451
diff --git a/gcc/testsuite/gfortran.dg/intent_out_8.f90 b/gcc/testsuite/gfortran.dg/intent_out_8.f90
new file mode 100644 (file)
index 0000000..674d833
--- /dev/null
@@ -0,0 +1,17 @@
+! { dg-do compile }
+! { dg-options "-Wall" }
+!
+! PR 53655: [F03] "default initializer" warnings
+!
+! Contributed by Tobias Burnus <burnus@gcc.gnu.org>
+
+type t
+end type t
+
+contains
+
+  subroutine foo(x)
+    type(t), intent(out) :: x
+  end subroutine
+
+end