Files
zig0/main.c

40 lines
735 B
C

#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
int zig1_run(char* program, char** msg);
int zig1_run_file(char* fname, char** msg);
static void usage(const char* argv0)
{
fprintf(stderr, "Usage: %s program.zig\n", argv0);
}
int main(int argc, char** argv)
{
if (argc != 2) {
usage(argv[0]);
return 1;
}
char* msg;
switch (zig1_run_file(argv[1], &msg)) {
case 0:
return 0;
break;
case 1:
fprintf(stderr, "panic: %s\n", msg);
free(msg);
return 0;
break;
case 2:
fprintf(stderr, "interpreter error: %s\n", msg);
free(msg);
return 1;
break;
case 3:
return 1;
break;
}
}