re PR ada/22418 (Ada produces mis-match (non compatible) types in MODIFY_EXPR)
authorOlivier Hainque <hainque@adacore.com>
Fri, 21 Oct 2005 15:49:12 +0000 (15:49 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Fri, 21 Oct 2005 15:49:12 +0000 (15:49 +0000)
PR ada/22418
* decl.c (maybe_pad_type): Use proper bitsizetype for XVZ objects,
as we create them to store a size in bits.

From-SVN: r105743

gcc/ada/ChangeLog
gcc/ada/decl.c

index 877d6b7dfe41400efe90648645db58de96117783..31f324a142b486c26e3d9ca759087f81b8beb030 100644 (file)
@@ -1,3 +1,9 @@
+2005-09-21  Olivier Hainque  <hainque@adacore.com>
+
+       PR ada/22418
+       * decl.c (maybe_pad_type): Use proper bitsizetype for XVZ objects,
+       as we create them to store a size in bits.
+
 2005-10-21  Eric Botcazou  <ebotcazou@adacore.com>
 
        PR ada/21937
@@ -12,7 +18,7 @@
        of manually building the RETURN_EXPR tree.
        (call_to_gnu): Pass MODIFY_EXPR through build_binary_op.
        (gnat_to_gnu) <N_Return_Statement>: Pass MODIFY_EXPR through
-       build_binary_op for the "target pointer" case.  Use build_return_expr
+       build_binary_op for the "target pointer" case.  Use build_return_expr
        instead of manually building the RETURN_EXPR tree.
 
 2005-09-16  Laurent GUERBY  <laurent@guerby.net>
index 701501e88896d8a8f6e4695eb8d2d5ce653d46f8..5a9c931dca661166cd1e4601879debd4eb9e8b94 100644 (file)
@@ -4985,7 +4985,7 @@ maybe_pad_type (tree type, tree size, unsigned int align,
 
       if (size && TREE_CODE (size) != INTEGER_CST && definition)
        create_var_decl (concat_id_with_name (name, "XVZ"), NULL_TREE,
-                        sizetype, TYPE_SIZE (record), false, false, false,
+                        bitsizetype, TYPE_SIZE (record), false, false, false,
                         false, NULL, gnat_entity);
     }