On 12 January 2013 19:00, Jesus Nuñez <[email protected]> wrote: > BTW I also tried returning with ";yourself" but no luck in the test I made. > > i dont know what you trying to change there. this code works fine, because if it would not, then nothing else would work at all.
> 2013/1/12 Jesus Nuñez <[email protected]> >> >> Ok, but happens that #value: uses #fieldAt: was inherited from >> NBExternalStructure, which is no longer in the hierarchy. But I understand >> that it will no longer work with the change I made, any idea? >> >> >> Best Regards, >> >> Jesus >> >> >> 2013/1/12 Igor Stasenko <[email protected]> >>> >>> No, it should be >>> NBExternalAddress value: addr >>> because method should answer an instance of NBExternalAddress >>> not integer. >>> >>> On 12 January 2013 15:25, Jesus Nuñez <[email protected]> wrote: >>> > Sorry. NBExternalAddress new ulongAt: adress >>> > >>> > >>> > 2013/1/12 Jesus Nuñez <[email protected]> >>> >> >>> >> I have made a small change in the code because NBExternalAdress does >>> >> not >>> >> inherit from NBExternalStructure anymore. It is safe?. I mean so far >>> >> no >>> >> problems but my understanding is limited so I haven't make any commit. >>> >> >>> >> getGlobalSymbolPointer: symbolName >>> >> | bytes addr | >>> >> bytes := ByteArray new: 8. >>> >> self bootstrapGetGlobalSymbolPointer: symbolName into: bytes. >>> >> addr := bytes unsignedLongAt: 1 bigEndian: false. >>> >> addr = 0 >>> >> ifTrue: [self error: 'failed to get a symbol address: ' , symbolName]. >>> >> +^ NBExternalAddress ulongAt: addr >>> >> -^ NBExternalAddress value: addr >>> >> >>> >> Cheers >>> > >>> > >>> >>> >>> >>> -- >>> Best regards, >>> Igor Stasenko. >>> >> > -- Best regards, Igor Stasenko.
