Commit 7f884827 authored by Claes Sjofors's avatar Claes Sjofors

Class editor, check that relative pointer size is set (refs #41)

parent da5f6d56
...@@ -117,8 +117,9 @@ SObject pwrs:Class ...@@ -117,8 +117,9 @@ SObject pwrs:Class
Attr Type = pwr_eType_UInt32 Attr Type = pwr_eType_UInt32
Attr Offset = 40 Attr Offset = 40
Attr Size = 4 Attr Size = 4
Attr Flags = PWR_MASK_NOEDIT Attr Flags = 0
Attr Flags |= PWR_MASK_NOWBL ! Attr Flags = PWR_MASK_NOEDIT
! Attr Flags |= PWR_MASK_NOWBL
Attr Elements = 1 Attr Elements = 1
Attr ParamIndex = 4 Attr ParamIndex = 4
Attr TypeRef = pwr_eType_UInt32 Attr TypeRef = pwr_eType_UInt32
......
...@@ -994,6 +994,9 @@ void wb_wblnode::buildAttribute( ref_wblnode classdef, ref_wblnode objbodydef, ...@@ -994,6 +994,9 @@ void wb_wblnode::buildAttribute( ref_wblnode classdef, ref_wblnode objbodydef,
o->a.offset = ((pwr_sParam *)o->rbody)->Info.Offset = *boffset; o->a.offset = ((pwr_sParam *)o->rbody)->Info.Offset = *boffset;
if ( o->a.flags & pwr_mAdef_pointer && !(o->a.flags & pwr_mAdef_private)) { if ( o->a.flags & pwr_mAdef_pointer && !(o->a.flags & pwr_mAdef_private)) {
// Size contains the size if the pointed entity // Size contains the size if the pointed entity
if ( o->a.size == 0)
m_vrep->error( "Size of relative pointer should contain target size", getFileName(), line_number);
if ( o->a.flags & pwr_mAdef_array) if ( o->a.flags & pwr_mAdef_array)
*boffset += pwr_cAlignLW * o->a.elements; *boffset += pwr_cAlignLW * o->a.elements;
else else
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment