found the other instance at line ldelf.c:681; the assignment from e32 is
indirect via "add".  same results as before.


On Wed, May 1, 2013 at 12:14 PM, Skip Tavakkolian <
[email protected]> wrote:

> bootes% grep -n 'rp->add' *.[ch] | grep e32
> ldelf.c:709: rp->add = e->e32(sect->base+rp->off);
> ldmacho.c:807: rp->add = (int32)e->e32(s->p+rp->off) + rp->off + 4 -
> secaddr;
> ldmacho.c:809: rp->add = (int32)e->e32(s->p+rp->off);
> ldpe.c:294: rp->add = (int32)le32(rsect->base+rp->off);
> ldpe.c:300: rp->add = le32(rsect->base+rp->off);
>
> it seems that ldelf.c:709 is the only place that fits your instructions.
>  doing the cast has no effect (i.e. fails building cmd/go with the same
> error messages)
>
>
> On Wed, May 1, 2013 at 11:54 AM, Rob Pike <[email protected]> wrote:
>
>> that means you are building from source
>>
>> in the ld directory, look for assignments to rd->add from calls to e32.
>> two do not do a cast to int32. try casting those two and let me know if you
>> can
>>
>> i will be at work in a couple of hours, not on a phone, and can offer
>> more help then.
>>
>>
>> -rob
>>
>> On May 1, 2013, at 11:31 AM, Skip Tavakkolian <[email protected]>
>> wrote:
>>
>> yes.
>>
>>
>> On Wed, May 1, 2013 at 11:11 AM, Rob Pike <[email protected]> wrote:
>>
>>> Are you using Plan 9? Because I don't understand how you could get
>>> those messages on Plan 9, but I do on other systems.
>>>
>>> -rob
>>>
>>>
>>
>

Reply via email to