On Wed, Mar 3, 2021 at 8:37 PM Bruno Haible <br...@clisp.org> wrote: > > On a x86_64 glibc system, building a Gnulib testdir with tcc (configured to > produce x86 code: './configure --cpu=x86 --triplet=i386-linux-gnu') gives > a number of test failures: > > FAIL: test-binary-io.sh > FAIL: test-canonicalize > FAIL: test-chown > FAIL: test-closein.sh > FAIL: test-fchownat > FAIL: test-fclose > FAIL: test-fdutimensat > FAIL: test-fflush > FAIL: test-fflush2.sh > FAIL: test-fpurge > FAIL: test-freading > FAIL: test-freopen-safer > FAIL: test-fseek.sh > FAIL: test-fseeko.sh > FAIL: test-fseeko3.sh > FAIL: test-fseeko4.sh > FAIL: test-fstatat > FAIL: test-ftell3 > FAIL: test-ftello.sh > FAIL: test-ftello2.sh > FAIL: test-ftello3 > FAIL: test-ftello4.sh > FAIL: test-futimens > FAIL: test-get-rusage-as > FAIL: test-lchown > FAIL: test-linkat > FAIL: test-lseek.sh > FAIL: test-lstat > FAIL: test-pread.sh > FAIL: test-pwrite.sh > FAIL: test-read-file > FAIL: test-rename > FAIL: test-renameat > FAIL: test-renameatu > FAIL: test-stat > FAIL: test-statat > FAIL: test-supersede > FAIL: test-truncate > FAIL: test-utime > FAIL: test-utimens > FAIL: test-utimensat > FAIL: test-yesno.sh > FAIL: test-fts > > The standard I/O functions appear to be severely broken in this configuration. > (My guess is that tcc does not support the symbol versioning used by glibc.)
Before you go down a rabbit hole on this... Does GNU have a policy in place for supporting compilers? In the past I've seen it stated in terms of market share. For example, the United States IRS supports browsers that have 5% or greater market share. The IRS would support IE, Forefox, Opera and several others based on statistics gathered from their web logs. Some systems you won't be able to gather statistics. For example, you won't know the market share of the SunCC compiler on Solaris or XLC on AIX. For SunCC or XLC you should assume it meets policy requirements because it is the vendor's native compiler. I believe Debian collects statistics on program usage. Maybe you should look at TinyCC usage before you decide to spend a lot of time on it. Jeff