tree-ssa-structalias.c (intra_create_variable_infos): Do not create fake variables...
authorEric Botcazou <ebotcazou@adacore.com>
Mon, 23 Jan 2012 11:19:22 +0000 (11:19 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Mon, 23 Jan 2012 11:19:22 +0000 (11:19 +0000)
* tree-ssa-structalias.c (intra_create_variable_infos): Do not create
fake variables for restrict-qualified pointers whose pointed-to type
contains a placeholder.

From-SVN: r183427

gcc/ChangeLog
gcc/tree-ssa-structalias.c

index 60697f851992e454b7bfde05a48060646ce124d9..b953cd04d716a166a5ac1a255a1a8a3c1b7436a7 100644 (file)
@@ -1,3 +1,9 @@
+2012-01-23  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * tree-ssa-structalias.c (intra_create_variable_infos): Do not create
+       fake variables for restrict-qualified pointers whose pointed-to type
+       contains a placeholder.
+
 2012-01-23  Richard Guenther  <rguenther@suse.de>
 
        PR tree-optimization/51949
index 5a55d1651ff03634a09a55f6ed25bd16f3624393..b65f5aac02ce039a5328da24d7b65ff6f97370fb 100644 (file)
@@ -5664,7 +5664,8 @@ intra_create_variable_infos (void)
         Treat restrict qualified references the same.  */
       if (TYPE_RESTRICT (TREE_TYPE (t))
          && ((DECL_BY_REFERENCE (t) && POINTER_TYPE_P (TREE_TYPE (t)))
-             || TREE_CODE (TREE_TYPE (t)) == REFERENCE_TYPE))
+             || TREE_CODE (TREE_TYPE (t)) == REFERENCE_TYPE)
+         && !type_contains_placeholder_p (TREE_TYPE (TREE_TYPE (t))))
        {
          struct constraint_expr lhsc, rhsc;
          varinfo_t vi;