Fun
0.41.5
The programming language that makes You have fun
Main Page
Data Structures
Files
File List
Globals
Loading...
Searching...
No Matches
src
vm
core
load_local.c
Go to the documentation of this file.
1
/*
2
* This file is part of the Fun programming language.
3
* https://fun-lang.xyz/
4
*
5
* Copyright 2025 Johannes Findeisen <you@hanez.org>
6
* Licensed under the terms of the Apache-2.0 license.
7
* https://opensource.org/license/apache-2-0
8
*/
9
29
30
case
OP_LOAD_LOCAL
: {
31
int
slot = inst.operand;
32
if
(slot < 0 || slot >=
MAX_FRAME_LOCALS
) {
33
fprintf
(stderr,
"Runtime error: local slot out of range\n"
);
34
exit
(1);
35
}
36
Value
val
=
copy_value
(&
f
->locals[slot]);
37
push_value
(vm,
val
);
38
break
;
39
}
OP_LOAD_LOCAL
@ OP_LOAD_LOCAL
Definition
bytecode.h:38
push_value
push_value(vm, val)
val
Value val
Definition
load_local.c:36
f
FILE * f
Definition
read_file.c:38
Value
Tagged union representing a Fun value.
Definition
value.h:68
copy_value
Value copy_value(const Value *v)
Shallow copy a Value.
Definition
value.c:415
fprintf
#define fprintf
Definition
vm.c:200
exit
#define exit(code)
Definition
vm.c:230
MAX_FRAME_LOCALS
#define MAX_FRAME_LOCALS
Definition
vm.h:30
Generated on
for Fun by
1.16.1