summaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-structalias.c
diff options
context:
space:
mode:
authorebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2012-01-23 11:19:22 +0000
committerebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2012-01-23 11:19:22 +0000
commitbd57fdffd21c09b8fcee55399c439c6e36e1d954 (patch)
tree238a94bc32a5738bec64ec25f06c4858feb7c4a5 /gcc/tree-ssa-structalias.c
parent09f12dfe038b24c7cd0998bbb3d21741b8d3aaa3 (diff)
downloadgcc-bd57fdffd21c09b8fcee55399c439c6e36e1d954.tar.gz
* tree-ssa-structalias.c (intra_create_variable_infos): Do not create
fake variables for restrict-qualified pointers whose pointed-to type contains a placeholder. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183427 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-structalias.c')
-rw-r--r--gcc/tree-ssa-structalias.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c
index 5a55d1651ff..b65f5aac02c 100644
--- a/gcc/tree-ssa-structalias.c
+++ b/gcc/tree-ssa-structalias.c
@@ -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;