mirror of
https://github.com/mirror/tinycc.git
synced 2025-03-24 10:00:07 +08:00
Don't skip weak symbols during ar creation
``` $ echo 'int __attribute__((__weak__)) f(void) { return 4; }' > w.c $ tcc -c w.c -o w.o $ tcc-old -ar rc w.a w.o; nm -s w.a # previous behaviour, not indexed w.o: 0000000000000000 W f $ ar rc w.a w.o; nm -s w.a # GNU binutils behaviour, indexed Archive index: f in w.o 0000000000000000 W f $ tcc-new rc w.a w.o; nm -s w.a # new behaviour, indexed Archive index: f in w.o 0000000000000000 W f ```
This commit is contained in:
parent
1645616843
commit
da11cf6515
@ -200,6 +200,9 @@ ST_FUNC int tcc_tool_ar(TCCState *s1, int argc, char **argv)
|
||||
(sym->st_info == 0x10
|
||||
|| sym->st_info == 0x11
|
||||
|| sym->st_info == 0x12
|
||||
|| sym->st_info == 0x20
|
||||
|| sym->st_info == 0x21
|
||||
|| sym->st_info == 0x22
|
||||
)) {
|
||||
//printf("symtab: %2Xh %4Xh %2Xh %s\n", sym->st_info, sym->st_size, sym->st_shndx, strtab + sym->st_name);
|
||||
istrlen = strlen(strtab + sym->st_name)+1;
|
||||
|
Loading…
Reference in New Issue
Block a user