This commit is contained in:
2026-03-18 05:53:40 +11:00

View File

@@ -1183,11 +1183,11 @@ GroundValue interpretGroundInstruction(GroundInstruction inst, GroundScope* scop
char buf[256]; char buf[256];
switch (value->type) { switch (value->type) {
case INT: { case INT: {
snprintf(buf, sizeof(buf) * 256, "%" PRId64, value->data.intVal); snprintf(buf, sizeof(buf), "%" PRId64, value->data.intVal);
break; break;
} }
case DOUBLE: { case DOUBLE: {
snprintf(buf, sizeof(buf) * 256, "%f", value->data.doubleVal); snprintf(buf, sizeof(buf), "%f", value->data.doubleVal);
break; break;
} }
case STRING: { case STRING: {
@@ -1913,16 +1913,20 @@ GroundValue interpretGroundInstruction(GroundInstruction inst, GroundScope* scop
GroundProgram program = parseFile(fileContents); GroundProgram program = parseFile(fileContents);
free(fileContents); free(fileContents);
GroundScope newScope = { GroundScope newScope = {
.variables = scope->variables, .variables = scope->variables,
.labels = malloc(sizeof(GroundLabel*)), .labels = malloc(sizeof(GroundLabel*)),
.isMainScope = false .isMainScope = false
}; };
*newScope.labels = NULL; *newScope.labels = NULL;
int ci = currentInstruction;
interpretGroundProgram(&program, &newScope); interpretGroundProgram(&program, &newScope);
currentInstruction = ci;
break; break;
} }