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.

Reply via email to