Files
sc/main.c

41 lines
599 B
C

#include "src/compiler.h"
#include "src/parser.h"
int main(int argc, char** argv) {
char* inp;
long size;
if (argc != 2) {
printf("usage: %s FILE\n", argv[0]);
return 1;
}
FILE* f = fopen(argv[1], "r");
if (!f) {
puts("Error while opening the file.");
return 1;
}
fseek(f, 0, SEEK_END);
size = ftell(f);
fseek(f, 0, SEEK_SET);
inp = malloc(size+1);
fread(inp, size, 1, f);
fclose(f);
inp[size] = '\0';
sc_ast* ast = sc_parse(inp);
char* out = compile(ast);
printf("%s\n", out);
free(inp);
free(out);
sc_ast_free(ast);
return 0;
}