aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.c
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2002-01-23 07:44:45 -0500
committerJason Merrill <jason@gcc.gnu.org>2002-01-23 07:44:45 -0500
commitf893c16eeab350c284d0c079843ad32b3bb3bc8d (patch)
treeb1606bf87e0be3cc9792098ad501a40879f36f16 /gcc/tree.c
parentb21155754fcccc8980d5e696969229bb20375da5 (diff)
downloadgcc-f893c16eeab350c284d0c079843ad32b3bb3bc8d.zip
gcc-f893c16eeab350c284d0c079843ad32b3bb3bc8d.tar.gz
gcc-f893c16eeab350c284d0c079843ad32b3bb3bc8d.tar.bz2
re PR c++/3331 (member pointer inherits const)
* tree.c (build1): Don't set TREE_READONLY on INDIRECT_REF. PR c++/3331 * cp/init.c (resolve_offset_ref): Use build_indirect_ref. From-SVN: r49132
Diffstat (limited to 'gcc/tree.c')
-rw-r--r--gcc/tree.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/tree.c b/gcc/tree.c
index 53d5889..adaa9ab 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -2507,6 +2507,12 @@ build1 (code, type, node)
TREE_READONLY (t) = 0;
break;
+ case INDIRECT_REF:
+ /* Whether a dereference is readonly has nothing to do with whether
+ its operand is readonly. */
+ TREE_READONLY (t) = 0;
+ break;
+
default:
if (TREE_CODE_CLASS (code) == '1' && node && TREE_CONSTANT (node))
TREE_CONSTANT (t) = 1;