taviso / 123elf

A native port of Lotus 1-2-3 to Linux.
1.16k stars 59 forks source link

Support redirecting unexported local symbols. #71

Closed taviso closed 2 years ago

taviso commented 2 years ago

coffsyrup cannot currently undefine local symbols, but there's no reason why it can't. The main problem is there are no relocs, so existing callers will still call the old function. There is an easy solution:

Now we provide a replacement, and the linker will just fix it up for us.

taviso commented 2 years ago

I have a patch that seems to work, but it's kinda hacky, hopefully it doesn't break anything.