tests: Added numerous tests.

The tests are taken almost verbatim from the open source project PicoC. It can
be found at https://code.google.com/p/picoc/.

The tests range from very simple/trivial ones to more complicated. My view is
that the more tests the better. Without tests like this I was very reluctant to
make any changes to tcc for the fear of breaking things.

The tests pass on Win32, OSX, Linux x86 and x86_64. One or two tests fail on
each platform due to differences in the runtime library.
This commit is contained in:
Milutin Jovanović
2012-06-18 13:27:32 -04:00
parent b0ebcfa7ba
commit 42c1b6ba38
111 changed files with 2988 additions and 0 deletions

31
tests2/03_struct.c Normal file
View File

@ -0,0 +1,31 @@
#include <stdio.h>
struct fred
{
int boris;
int natasha;
};
void main()
{
struct fred bloggs;
bloggs.boris = 12;
bloggs.natasha = 34;
printf("%d\n", bloggs.boris);
printf("%d\n", bloggs.natasha);
struct fred jones[2];
jones[0].boris = 12;
jones[0].natasha = 34;
jones[1].boris = 56;
jones[1].natasha = 78;
printf("%d\n", jones[0].boris);
printf("%d\n", jones[0].natasha);
printf("%d\n", jones[1].boris);
printf("%d\n", jones[1].natasha);
return 0;
}