It compiles on windows now I guess
This commit is contained in:
@@ -5,7 +5,9 @@
|
|||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
#ifndef _WIN32
|
||||||
#include <dlfcn.h>
|
#include <dlfcn.h>
|
||||||
|
#endif
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
|
||||||
@@ -1925,6 +1927,10 @@ GroundValue interpretGroundInstruction(GroundInstruction inst, GroundScope* scop
|
|||||||
}
|
}
|
||||||
|
|
||||||
case EXTERN: {
|
case EXTERN: {
|
||||||
|
#ifdef _WIN32
|
||||||
|
runtimeError(FIXME, "No Windows support for extern, sucker", in, currentInstruction);
|
||||||
|
#endif
|
||||||
|
#ifndef _WIN32
|
||||||
if (in->args.length < 1) {
|
if (in->args.length < 1) {
|
||||||
runtimeError(TOO_FEW_ARGS, "Expecting 1 arg", in, currentInstruction);
|
runtimeError(TOO_FEW_ARGS, "Expecting 1 arg", in, currentInstruction);
|
||||||
}
|
}
|
||||||
@@ -1974,6 +1980,7 @@ GroundValue interpretGroundInstruction(GroundInstruction inst, GroundScope* scop
|
|||||||
}
|
}
|
||||||
|
|
||||||
initFn(scope);
|
initFn(scope);
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
19
src/parser.c
19
src/parser.c
@@ -5,6 +5,25 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
|
|
||||||
|
#ifdef _WIN32
|
||||||
|
size_t strnlen(const char *src, size_t n) {
|
||||||
|
size_t len = 0;
|
||||||
|
while (len < n && src[len])
|
||||||
|
len++;
|
||||||
|
return len;
|
||||||
|
}
|
||||||
|
|
||||||
|
char* strndup(const char *s, size_t n) {
|
||||||
|
size_t len = strnlen(s, n);
|
||||||
|
char *p = malloc(len + 1);
|
||||||
|
if (p) {
|
||||||
|
memcpy(p, s, len);
|
||||||
|
p[len] = '\0';
|
||||||
|
}
|
||||||
|
return p;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
GroundProgram createGroundProgram() {
|
GroundProgram createGroundProgram() {
|
||||||
GroundProgram gp;
|
GroundProgram gp;
|
||||||
gp.size = 0;
|
gp.size = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user