Add chibicc

This program popped up on Hacker News recently. It's the only modern
compiler I've ever seen that doesn't have dependencies and is easily
modified. So I added all of the missing GNU extensions I like to use
which means it might be possible soon to build on non-Linux and have
third party not vendor gcc binaries.
This commit is contained in:
Justine Tunney 2020-12-05 12:20:41 -08:00
parent e44a0cf6f8
commit 8da931a7f6
298 changed files with 19493 additions and 11950 deletions

51
third_party/chibicc/test/decl_test.c vendored Normal file
View file

@ -0,0 +1,51 @@
#include "third_party/chibicc/test/test.h"
int main() {
ASSERT(1, ({
char x;
sizeof(x);
}));
ASSERT(2, ({
short int x;
sizeof(x);
}));
ASSERT(2, ({
int short x;
sizeof(x);
}));
ASSERT(4, ({
int x;
sizeof(x);
}));
ASSERT(8, ({
long int x;
sizeof(x);
}));
ASSERT(8, ({
int long x;
sizeof(x);
}));
ASSERT(8, ({
long long x;
sizeof(x);
}));
ASSERT(0, ({
_Bool x = 0;
x;
}));
ASSERT(1, ({
_Bool x = 1;
x;
}));
ASSERT(1, ({
_Bool x = 2;
x;
}));
ASSERT(1, (_Bool)1);
ASSERT(1, (_Bool)2);
ASSERT(0, (_Bool)(char)256);
return 0;
}