(store_parm_decls,combine_parm_decls): Call layout_decl for a parm declared...
authorRichard Stallman <rms@gnu.org>
Fri, 5 Mar 1993 05:43:51 +0000 (05:43 +0000)
committerRichard Stallman <rms@gnu.org>
Fri, 5 Mar 1993 05:43:51 +0000 (05:43 +0000)
(store_parm_decls,combine_parm_decls): Call layout_decl
for a parm declared float when it is changed to double under a
traditional compilation.

From-SVN: r3652

gcc/c-decl.c

index e1c5b0d55608203aec94a893accc294c7ffe2735..8e5a5999dff9560df54fa765af5d0cf780878315 100644 (file)
@@ -5808,7 +5808,11 @@ store_parm_decls ()
          /* Traditionally, a parm declared float is actually a double.  */
          if (found && flag_traditional
              && TYPE_MAIN_VARIANT (TREE_TYPE (found)) == float_type_node)
-           TREE_TYPE (found) = double_type_node;
+           {
+             TREE_TYPE (found) = double_type_node;
+             DECL_ARG_TYPE (found) = double_type_node;
+             layout_decl (found, 0);
+           }
 
          /* If no declaration found, default to int.  */
          if (!found)
@@ -6090,7 +6094,11 @@ combine_parm_decls (specparms, parmlist, void_at_end)
       /* Traditionally, a parm declared float is actually a double.  */
       if (found && flag_traditional
          && TYPE_MAIN_VARIANT (TREE_TYPE (found)) == float_type_node)
-       TREE_TYPE (found) = double_type_node;
+       {
+         TREE_TYPE (found) = double_type_node;
+         DECL_ARG_TYPE (found) = double_type_node;
+         layout_decl (found, 0);
+       }
 
       /* If no declaration found, default to int.  */
       if (!found)