aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/cp/ChangeLog3
-rw-r--r--gcc/cp/typeck.c1
-rw-r--r--gcc/tree.c4
4 files changed, 12 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 1995751..b4b0490 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2015-04-24 Jason Merrill <jason@redhat.com>
+
+ PR c++/50800
+ * tree.c (build_reference_type_for_mode): Don't pass can_alias_all
+ down when building TYPE_CANONICAL.
+ (build_pointer_type_for_mode): Likewise.
+
2015-04-24 Chen Gang <gang.chen.5i5j@gmail.com>
* genrecog.c (validate_pattern): Check matching constraint refers
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 767094d4..7c7ec09 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,5 +1,8 @@
2015-04-24 Jason Merrill <jason@redhat.com>
+ PR c++/50800
+ * typeck.c (structural_comptypes): Don't check TYPE_REF_CAN_ALIAS_ALL.
+
* constexpr.c (potential_constant_expression_1) [MINUS_EXPR]:
Remove obsolete code.
[NE_EXPR]: Likewise.
diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c
index 250b5d6..91db32a 100644
--- a/gcc/cp/typeck.c
+++ b/gcc/cp/typeck.c
@@ -1310,7 +1310,6 @@ structural_comptypes (tree t1, tree t2, int strict)
case POINTER_TYPE:
if (TYPE_MODE (t1) != TYPE_MODE (t2)
- || TYPE_REF_CAN_ALIAS_ALL (t1) != TYPE_REF_CAN_ALIAS_ALL (t2)
|| !same_type_p (TREE_TYPE (t1), TREE_TYPE (t2)))
return false;
break;
diff --git a/gcc/tree.c b/gcc/tree.c
index 497b145..daf0292 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -7706,7 +7706,7 @@ build_pointer_type_for_mode (tree to_type, machine_mode mode,
else if (TYPE_CANONICAL (to_type) != to_type)
TYPE_CANONICAL (t)
= build_pointer_type_for_mode (TYPE_CANONICAL (to_type),
- mode, can_alias_all);
+ mode, false);
/* Lay out the type. This function has many callers that are concerned
with expression-construction, and this simplifies them all. */
@@ -7773,7 +7773,7 @@ build_reference_type_for_mode (tree to_type, machine_mode mode,
else if (TYPE_CANONICAL (to_type) != to_type)
TYPE_CANONICAL (t)
= build_reference_type_for_mode (TYPE_CANONICAL (to_type),
- mode, can_alias_all);
+ mode, false);
layout_type (t);