class.c (build_vtbl_initializer): Adjust computation of new_position and which entry to add padding for.
* class.c (build_vtbl_initializer): Adjust computation of new_position and which entry to add padding for. From-SVN: r160856
This commit is contained in:
parent
616c557d02
commit
25d8a217d2
|
@ -1,3 +1,8 @@
|
|||
2010-06-16 Nathan Froyd <froydnj@codesourcery.com>
|
||||
|
||||
* class.c (build_vtbl_initializer): Adjust computation of new_position
|
||||
and which entry to add padding for.
|
||||
|
||||
2010-06-16 Jason Merrill <jason@redhat.com>
|
||||
|
||||
* except.c (check_noexcept_r): Return the problematic function.
|
||||
|
|
|
@ -7607,14 +7607,15 @@ build_vtbl_initializer (tree binfo,
|
|||
ix--)
|
||||
{
|
||||
int j;
|
||||
int new_position = TARGET_VTABLE_DATA_ENTRY_DISTANCE * ix;
|
||||
int new_position = (TARGET_VTABLE_DATA_ENTRY_DISTANCE * ix
|
||||
+ (TARGET_VTABLE_DATA_ENTRY_DISTANCE - 1));
|
||||
|
||||
VEC_replace (constructor_elt, vid.inits, new_position, e);
|
||||
|
||||
for (j = 1; j < TARGET_VTABLE_DATA_ENTRY_DISTANCE; ++j)
|
||||
{
|
||||
constructor_elt *f = VEC_index (constructor_elt, *inits,
|
||||
new_position + j);
|
||||
constructor_elt *f = VEC_index (constructor_elt, vid.inits,
|
||||
new_position - j);
|
||||
f->index = NULL_TREE;
|
||||
f->value = build1 (NOP_EXPR, vtable_entry_type,
|
||||
null_pointer_node);
|
||||
|
|
Loading…
Reference in New Issue