This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: C++ PATCH: PR 12815
Tested x86_64-pc-linux-gnu, applied to trunk.
2004-01-12 Jason Merrill <jason@redhat.com>
PR c++/12815
* class.c (build_base_path): Do not mark vtable references as
TREE_CONSTANT.
(build_vtbl_ref_1): Likewise.
*** class.c.~1~ 2004-01-12 17:05:02.000000000 -0500
--- class.c 2004-01-05 22:14:10.000000000 -0500
*************** build_base_path (enum tree_code code,
*** 328,334 ****
build_pointer_type (ptrdiff_type_node),
v_offset);
v_offset = build_indirect_ref (v_offset, NULL);
- TREE_CONSTANT (v_offset) = 1;
offset = convert_to_integer (ptrdiff_type_node,
size_diffop (offset,
--- 328,333 ----
*************** build_vtbl_ref_1 (tree instance, tree id
*** 455,461 ****
assemble_external (vtbl);
aref = build_array_ref (vtbl, idx);
- TREE_CONSTANT (aref) |= TREE_CONSTANT (vtbl) && TREE_CONSTANT (idx);
return aref;
}
--- 454,459 ----