]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
* expr.c (expand_assignment): Check for complete type.
authorSteve Ellcey <sje@cup.hp.com>
Thu, 31 Jul 2008 21:42:16 +0000 (21:42 +0000)
committerSteve Ellcey <sje@gcc.gnu.org>
Thu, 31 Jul 2008 21:42:16 +0000 (21:42 +0000)
From-SVN: r138439

gcc/ChangeLog
gcc/expr.c

index 3823eb634ae5c5465c3af47710d5ff3b72f93ca2..581a3330fcf5eb575dea1ba0decd605182f7cbf2 100644 (file)
@@ -1,3 +1,7 @@
+2008-07-31  Steve Ellcey  <sje@cup.hp.com>
+
+       * expr.c (expand_assignment): Check for complete type.
+
 2008-07-31  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR debug/36977
index 4984780fe325d9f3bafcf78120c69eb3ff11316b..eae8093d61ef968f6df21b16e4a66170655b47d2 100644 (file)
@@ -4280,6 +4280,7 @@ expand_assignment (tree to, tree from, bool nontemporal)
      needs to be done.  Handling this in the normal way is safe because no
      computation is done before the call.  */
   if (TREE_CODE (from) == CALL_EXPR && ! aggregate_value_p (from, from)
+      && COMPLETE_TYPE_P (TREE_TYPE (from))
       && TREE_CODE (TYPE_SIZE (TREE_TYPE (from))) == INTEGER_CST
       && ! ((TREE_CODE (to) == VAR_DECL || TREE_CODE (to) == PARM_DECL)
            && REG_P (DECL_RTL (to))))