Since commit 9b09fc3 ("Add support of asm label for functions",
05-09-2010) tcc has had the capability to rename functions at the
assembly level. This capability was subsequently used by commit
2596273 ("Add support for __REDIRECT_NTH needed with eglibc",
11-09-2010) to redirect long double functions on platforms which
did not support long double.Here we add the companion macro __REDIRECT which is used (along with __REDIRECT_NTH) in the glibc headers on Linux to support the Large File API (when _FILE_OFFSET_BITS is set to 64). Signed-off-by: Ramsay Jones <[email protected]> --- Hi, This patch allows me to use tcc to compile git without warnings. Without this patch, each use of readdir() or getrlimit() elicits an "assignment from incompatible pointer type" warning. [BTW, tcc builds git about 6x faster than gcc. The testsuite runs about 6% slower.] ATB, Ramsay Jones libtcc.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/libtcc.c b/libtcc.c index 159e23b..5e497c9 100644 --- a/libtcc.c +++ b/libtcc.c @@ -980,6 +980,7 @@ LIBTCCAPI TCCState *tcc_new(void) #endif /* glibc defines */ + tcc_define_symbol(s, "__REDIRECT(name, proto, alias)", "name proto __asm__ (#alias)"); tcc_define_symbol(s, "__REDIRECT_NTH(name, proto, alias)", "name proto __asm__ (#alias) __THROW"); #ifndef TCC_TARGET_PE -- 1.7.9 _______________________________________________ Tinycc-devel mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/tinycc-devel
