cosmopolitan/third_party/chibicc/test/complit_test.c
Justine Tunney 8da931a7f6 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.
2020-12-06 16:20:21 -08:00

31 lines
621 B
C

#include "third_party/chibicc/test/test.h"
typedef struct Tree {
int val;
struct Tree *lhs;
struct Tree *rhs;
} Tree;
Tree *tree = &(Tree){1, &(Tree){2, &(Tree){3, 0, 0}, &(Tree){4, 0, 0}}, 0};
int main() {
ASSERT(1, (int){1});
ASSERT(2, ((int[]){0, 1, 2})[2]);
ASSERT('a', ((struct {
char a;
int b;
}){'a', 3})
.a);
ASSERT(3, ({
int x = 3;
(int){x};
}));
(int){3} = 5;
ASSERT(1, tree->val);
ASSERT(2, tree->lhs->val);
ASSERT(3, tree->lhs->lhs->val);
ASSERT(4, tree->lhs->rhs->val);
return 0;
}