Skip to content

Latest commit

 

History

History
66 lines (64 loc) · 3.48 KB

File metadata and controls

66 lines (64 loc) · 3.48 KB

Exit codes

When a fatal error happens, program will shut down, returning a specific exit code, below is a list of exit codes.

Exit code Description
0 No termination point (standard exit code if you have no ret or retn in your script).
1 Invalid section (for example, tried to enter a section named .lol).
2 Attempted to call a procedure which does not exist.
3 Invalid non-numeric value was passed to retn.
4 sysreq failed, pretty self-explanatory.
5 Stack/heap collision; pretty self-explanatory.
6 Data overflow - tried to pop a value into unallocated address.
7 Data type mismatch.
8 Tried to redefine a label.
9 Bus error; tried to access an invalid label with jmp.
10 Invalid instruction; pretty self-explanatory, also happens if you use . or , (instruction parsing delimiters) in your rem comments.
11 Memory overflow.
12 Memory underflow.
13 Procedure redefinition.
14 Invalid memory access; tried to access an address using mov.hea,... that isn't allocated for the heap.
15 Invalid syntax.
16 Memory leak: neither retn, ret or heap were used at the end of the program while the hea register wasn't at 0.
17 Invalid configuration.
18 You tried to call a procedure within a procedure.
19 Unknown system call index (invalid value moved into fdx).
20 Unknown parser directive.
21 Namespace error.
22 Attempted to use an unassigned pointer/reference variable.
23 Tried to redefine a variable.
24 Tried to redefine a structure.
25 Unexpected closing brace.
26 Tried to access a structure that hasn't been declared.
27 Tried to access an undefined structure member.
28 Tried to create a struct inside a struct.
29 Expected closing brace.
30 Tried to create an empty procedure.
31 Tried to redefine a data structure.
32 Unexpected usage of the end instruction.
33 Tried to use an improperly loaded dynamic library instruction.
34 Unknown event specified in the handler section.
35 Assigned an invalid procedure as an event handler.
36 Tried to modify a constant.
37 Operating system-related error.
38 Memory allocation error.
39 Tried to modify the memory manually before using free.
40 Invalid stack call.
41 Handle reassignment.
42 sysenter failed.
43 Macro redefinition.
44 Unexpected hash.
45 Undefined macro.
46 Unknown system interrupt ID.
47 Expected await - happens when you don't use await before using thread system calls, but if the thread finished or returned they will work.
48 Undefined thread.
49 Invalid expression.
50 Virtual memory overflow.
51 Attempted to redefine a tuple.
52 Invalid tuple.
53 Cannot execute the thread using await because the thread is trying to access unreachable data.
54 Invalid allocation.
55 Invalid context initializer.
56 The virtual machine reached a point where the linker failed.
57 JIT compiler failure. Occurs when you try to use async or await inside a procedure block.
58 Kernel panic. Occurs when an error occurs within the kernel's functions!
59 Tried to perform exclusive move on immovable type such as thread, procedure and static objects.