Update for elflint problems
commit4c82b003420fabbb95e077866784badc1a49189b
authorherman ten brugge <hermantenbrugge@home.nl>
Tue, 17 May 2022 05:34:10 +0000 (17 07:34 +0200)
committerherman ten brugge <hermantenbrugge@home.nl>
Tue, 17 May 2022 05:34:10 +0000 (17 07:34 +0200)
tree09688996f13bcb0629f18dd387b1154165f5b682
parenta4f9e3cf4c3580bf9e155c4918926010a32c5fcd
Update for elflint problems

tccgen.c:
- When __FUNCTION__ is used and no code is generated use symbol len = 0.

tccelf.c:
- If library is present in verneed it should be in DT_NEEDED.
- @plt symbols should have size 0
- set _GLOBAL_OFFSET_TABLE_ st_size correct
- Remove version symbol if new value present

reported by elflint:

__FUNCTION__ problem:
  section [19] '.symtab': symbol 2134 (L.195) does not fit completely in referenced section [14] '.data.ro'
DT_NEEDED problem:
  section [26] '.gnu.version_r': entry 2 references unknown dependency
@plt symbols should have size 0:
  section [22] '.symtab': symbol 36557 (r_core_config_init@plt) does not fit completely in referenced section [14] '.plt'
_GLOBAL_OFFSET_TABLE_ size:
  section [44] '.symtab': _GLOBAL_OFFSET_TABLE_ symbol size 4 does not match .got section size 736
Remove version symbol:
  section [25] '.gnu.version': symbol 86: version index 3 is for requested version
  This happened for example with bounds checking symbol malloc
tccelf.c
tccgen.c