* calls.c (calls_function_1, case CONSTRUCTOR): New case.
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>
Sat, 30 Dec 2000 14:52:15 +0000 (14:52 +0000)
committerRichard Kenner <kenner@gcc.gnu.org>
Sat, 30 Dec 2000 14:52:15 +0000 (09:52 -0500)
From-SVN: r38560

gcc/ChangeLog
gcc/calls.c

index 4256da7fab70ec2cd97440044177475b1f9f833f..afeb33c69692d5bdac1d738c7516bd2cd3d50504 100644 (file)
@@ -1,5 +1,7 @@
 2000-12-30  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
+       * calls.c (calls_function_1, case CONSTRUCTOR): New case.
+
        * alias.c (alias_sets_conflict_p): New function.
        (mems_in_disjoint_alias_sets_p): Use it.
        (readonly_fields_p): Moved from expr.c; check for record type.
index 89706bcc6bf1d8b2d7335d69d373cf27aba8297e..95ff8b1e9dfb679e7f40a206b7870fbfe36aafa2 100644 (file)
@@ -297,6 +297,17 @@ calls_function_1 (exp, which)
 
       break;
 
+    case CONSTRUCTOR:
+      {
+       tree tem;
+
+       for (tem = CONSTRUCTOR_ELTS (exp); tem != 0; tem = TREE_CHAIN (tem))
+         if (calls_function_1 (TREE_VALUE (tem), which))
+           return 1;
+      }
+
+      return 0;
+
     case SAVE_EXPR:
       if (SAVE_EXPR_RTL (exp) != 0)
        return 0;