Note: residues from past builds can affect the results. Make sure you
don't have untracked files which you need, and use `git clean -xfd` to
really clean it up.
1. Out-of-tree tests broken. This used to work few weeks ago, but there were several commits which broke this scenario in various ways:
git clone <tcc-url> && cd tinycc && mkdir build && cd build && ../configure && make && make test
Linux (tested ubuntu 16.04 64) and windows (MINGW 32/64 with gcc 6.2 from msys2):
- dlltest, memtest fail - both assume we're at $(TOPSRC)/tests so can't find relevant source files (needs $(TOPSRC)/ instead of ../).
- tests/pp/16 fails - the (expected, correct) warning message has different source path (not sure how to fix).
On linux 64 and windows MINGW 32, after fixing dlltest/memtest paths and ignoring pp/16, all other tests pass.
The below 2/3/4 are after applying the dlltest/memtest fixes and ignoring pp/16.
2. libtest failure on Windows - MINGW 64 (gcc 6.2), with the following test output:
------------ libtest ------------
./libtcc_test.exe -B../../win32 -I../../include -I../.. -I.. -L..
0@@
fib(32) = 2178309
add(32, 64) = 96
gcc -o tcctest.gcc ../../tests/tcctest.c -DTCC_TARGET_X86_64 -DTCC_TARGET_PE -fno-strict-aliasing -I.. -I../.. -w -O0 -std=gnu99 -fno-omit-frame-pointer
../../tests/tcctest.c:2680:28: error: initializer element is not constant
{
^
make[1]: *** [Makefile:90: test.ref] Error 1
3. libtest failure on windows - building with tcc32 from some weeks ago - possibly expected? :
------------ libtest ------------
./libtcc_test.exe -B../../win32 -I../../include -I../.. -I.. -L..
fib(32) = 2178309
add(32, 64) = 96
/path/to/not-latest/tcc.exe -o tcctest.gcc ../../tests/tcctest.c -DTCC_TARGET_I386 -DTCC_TARGET_PE -I.. -I../.. -w -O0 -std=gnu99 -fno-omit-frame-pointer
../../tests/tcctest.c:70: error: invalid number
make[1]: *** [test.ref] Error 1
4. memtest failure when building using newly built tcc (32):
------------ memtest ------------
/path/to/tcc.exe -I.. -I../.. -DTCC_TARGET_I386 -DTCC_TARGET_PE -DONE_SOURCE -DMEM_DEBUG=2 ../../tcc.c -o memtest-tcc.exe
./memtest-tcc.exe -B../../win32 -I../../include -I../.. -I.. -L.. -DTCC_TARGET_I386 -DTCC_TARGET_PE -DONE_SOURCE ../../tcc.c
TAL_DEBUG: memory leak 1 chunk(s) (limit= 1024)
../../tccpp.c:331: chunk of 32 bytes leaked
make[1]: *** [memtest] Error 2