Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Error Codes

A list of error codes in the KSL compiler, where the originate, why they were triggered, etc.


EL0000 = Error [Lexer]: Unexpected End-of-File Immediately After Comment Opening

EL0001 = Error [Lexer]: Unexpected End-of-File While Lexing Comment

EL0002 = Error [Lexer]: Unexpected End-of-File Immediately After Comment Opening

EL0003 = Error [Lexer]: Unexpected End-of-File In Closing of Multi-Line Comment

EL0004 = Error [Lexer]: Unexpected End-of-File While Lexing Comment

EL0005 = Error [Lexer]: Unexpected End-of-File Immediately After Identifier Opening

EL0006 = Error [Lexer]: Unexpected End-of-File While Lexing Identifier

EL0007 = Error [Lexer]: Unexpected End-of-File Immediately After Number Opening

EL0008 = Error [Lexer]: Unexpected End-of-File While Lexing Number

EL0009 = Error [Lexer]: Unexpected End-of-File Immediately After String Opening

EL0010 = Error [Lexer]: Unexpected End-of-File While Lexing String


EP0000 = Error [Parser]: Expected <token> but got <token>

EP0001 = Error [Parser [Iden]]: Expected identifier, found <token>

EP0002 = Error [Parser [Qden]]: Expected identifier, found <token>

EP0003 = Error [Parser]: Unexpected end-of-file while parsing block

EP0004 = Error [Parser]: Function <name> parameter <param name> must be a valid type, currently <invalid type name>

EP0005 = Error [Parser]: Function <name> must derive valid type, currently <invalid type name>

EP0006 = Error [Parser]: Invalid statement used to initialize for loop

EP0007 = Error [Parser]: Invalid statement used in for loop

EP0008 = Error [Parser]: Namespace Declaration without a Name

EP0009 = Error [Parser]: Expected identifier or string after using but got <token>

EP0010 = Error [Parser]: Unexpected Token in Expression, Found <token>

EP0011 = Error [Parser]: Expected Literal in Expression, Found <token>


ES0000 = Error [Semantics]: Expected variable <name> to be <type> but it's <type>, maybe cast?

ES0001 = Error [Semantics]: Reference to undefined variable <name>

ES0002 = Error [Semantics]: Invalid Binary Operation Types, Cannot use <type> With <type>, Consider Casting

ES0003 = Error [Semantics]: Inline Function Call with Type Hint Doesn't Match Function Return Type (Hint: <type>, Returns <type>)

ES0004 = Error [Semantics]: Unexpected Number of Parameters to Function <name>, Expected <value> but got <value>

ES0005 = Error [Semantics]: Type mismatch passed to function <name> in arg slot <value>, expected <type> but got <type>

ES0006 = Error [Semantics]: Different types passed to forward declared function <name> in arg slot <value>, previously used <type> but <type> was passed, verify this is correct

ES0007 = Error [Semantics]: Empty array literal, verify this is correct

ES0008 = Error [Semantics]: Array literal initialized with type <type> was passed a <type>

ES0009 = Error [Semantics]: Missing type hint for array literal declaration

ES0010 = Error [Semantics]: Invalid array index type, must be in the integer family, got <type>

ES0011 = Error [Semantics]: Expected <literal> to be Parsed as an Integer

ES0012 = Error [Semantics]: Expected <literal> to be Parsed as a Float

ES0013 = Error [Semantics]: Cannot use <type> in the context of <type< (attempted literal upcast)

ES0014 = Error [Semantics]: Cannot use <type> in the context of <type> (attempted type conversion)

ES0015 = Error [Semantics]: Cannot implicitly convert <type> to <type> (would lose fractional data)

ES0016 = Error [Semantics]: Cannot implicity convert <type> to <type>

ES0017 = Error [Semantics]: Type mismatch in variable declaration <name>, expected <type> but got <type>

ES0018 = Error [Semantics]: Type mismatch in variable reassignment <name>, expected <type> but got <type>

ES0019 = Error [Semantics]: Attempted to reassign variable that does not exist <name>

ES0020 = Error [Semantics]: Type mismatch in function return, expected <type> but got <type>

ES0021 = Error [Semantics]: Type mismatch in function return, expected <type> but got none

ES0022 = Error [Semantics]: Condition in if statement must be of type Boolean, got <type>

ES0023 = Error [Semantics]: Condition in while statement must be of type Boolean, got <type>

ES0024 = Error [Semantics]: Condition in for statement must be of type Boolean, got <type>


ET0000 = Error [Symbols]: Scope <scope_name> not found in path

ET0001 = Error [Symbols]: Symbol <name> already exists in current scope

ET0002 = Error [Symbols]: Symbol <name> exists and is not a scope

ET0003 = Error [Symbols]: Symbol <name> already exists in specified scope

ET0004 = Error [Symbols]: Invalid scope in path <scope_name>

ET0005 = Error [Symbols]: Cannot enter scope <scope_name> because it's occupied by a non-scope-containing symbol


EN0000 = Error [Linker]: KSL requires <os_linker> for linking, install it or add it to path

EN0001 = Error [Linker]: Failed to run linker: <linker_error>

EN0002 = Error [Linker]: Linker failed with status code <linker_status><linker_error>