Test report

AliasLung Wang
Date2026-02-05_17h00m01s
Commit ID996ed4579fa1279643e2f86eeec25e9204db32c2
Tests summary
PartPassed / Total
Part 1: Lexer and parser88 / 88
Part 2: AST and sematic analysis0 / 112
Exit codes
CodeExplanation
260Generated program contains too many memory accesses.
250One or more lexer error(s).
245One or more parse error(s).
240One or more semantic error(s).
230Compiled program produced wrong output.
224AST construction is wrong.
204Compiled program not found.
124Your compiler or program timed out (your compiler or produced program might have an infinite loop).
125The MARS simulator timed out (maybe your generated program has an infinite loop).
2The MARS simulator exited prematurely.
1JVM exited prematurely. It might occur when your compiler has infinite recursion/loops, throws an uncaught exception, requires a different Java version, or when you have forgotten to push some files with git, etc.
Test nameComponentCompiler exit codeExpected compiler exit codeCompiled program codeExpected compiled program codeMemory accessesMax memory accessesResultCompiler LogSimulator errors
fibonacci lexer 0 0 N/A N/A N/A N/A Pass
int lexer 0 0 N/A N/A N/A N/A Pass
intintint lexer 0 0 N/A N/A N/A N/A Pass
single_comment lexer 0 0 N/A N/A N/A N/A Pass
multi_comment lexer 0 0 N/A N/A N/A N/A Pass
nested_comments lexer 0 0 N/A N/A N/A N/A Pass
all_tokens lexer 0 0 N/A N/A N/A N/A Pass
escape_codes_1 lexer 0 0 N/A N/A N/A N/A Pass
escape_codes_2 lexer 250 250 N/A N/A N/A N/A Pass
multiple_characters_in_single_quotes lexer 250 250 N/A N/A N/A N/A Pass
char_assign_digits lexer 250 250 N/A N/A N/A N/A Pass
most_chars lexer 0 0 N/A N/A N/A N/A Pass
no_main lexer 0 0 N/A N/A N/A N/A Pass
minimal lexer 0 0 N/A N/A N/A N/A Pass
undefined_token lexer 250 250 N/A N/A N/A N/A Pass
identifiers lexer 0 0 N/A N/A N/A N/A Pass
includes lexer 0 0 N/A N/A N/A N/A Pass
preprocessing lexer 250 250 N/A N/A N/A N/A Pass
empty lexer 0 0 N/A N/A N/A N/A Pass
division lexer 0 0 N/A N/A N/A N/A Pass
fibonacci parser 0 0 N/A N/A N/A N/A Pass
arithmetic interpreter parser 0 0 N/A N/A N/A N/A Pass
sort linked list parser 0 0 N/A N/A N/A N/A Pass
int parser 245 245 N/A N/A N/A N/A Pass
single_comment parser 0 0 N/A N/A N/A N/A Pass
multi_comment parser 0 0 N/A N/A N/A N/A Pass
nested_comments parser 245 245 N/A N/A N/A N/A Pass
escape_codes_1 parser 0 0 N/A N/A N/A N/A Pass
most_chars parser 0 0 N/A N/A N/A N/A Pass
no_main parser 245 245 N/A N/A N/A N/A Pass
minimal parser 0 0 N/A N/A N/A N/A Pass
just_main parser 245 245 N/A N/A N/A N/A Pass
identifiers parser 0 0 N/A N/A N/A N/A Pass
includes parser 0 0 N/A N/A N/A N/A Pass
break parser 0 0 N/A N/A N/A N/A Pass
continue parser 0 0 N/A N/A N/A N/A Pass
break_without_semicolon parser 245 245 N/A N/A N/A N/A Pass
continue_without_semicolon parser 245 245 N/A N/A N/A N/A Pass
empty parser 0 0 N/A N/A N/A N/A Pass
while_loop_1 parser 0 0 N/A N/A N/A N/A Pass
while_loop_2 parser 0 0 N/A N/A N/A N/A Pass
while_loop_3 parser 245 245 N/A N/A N/A N/A Pass
unterminated_stmt parser 245 245 N/A N/A N/A N/A Pass
function_application_1 parser 245 245 N/A N/A N/A N/A Pass
function_application_2 parser 0 0 N/A N/A N/A N/A Pass
function_application_3 parser 0 0 N/A N/A N/A N/A Pass
function_application_4 parser 245 245 N/A N/A N/A N/A Pass
function_declaration parser 0 0 N/A N/A N/A N/A Pass
function_declaration_without_semicolon parser 245 245 N/A N/A N/A N/A Pass
function_declaration_malformed parser 245 245 N/A N/A N/A N/A Pass
function_decl_def_and_struct parser 0 0 N/A N/A N/A N/A Pass
function_application_5 parser 0 0 N/A N/A N/A N/A Pass
count_to_n parser 0 0 N/A N/A N/A N/A Pass
declarations parser 0 0 N/A N/A N/A N/A Pass
missing_declarations parser 0 0 N/A N/A N/A N/A Pass
double_declarations parser 0 0 N/A N/A N/A N/A Pass
reserved_keyword_as_identifier parser 245 245 N/A N/A N/A N/A Pass
program_ends_with_single_comment parser 0 0 N/A N/A N/A N/A Pass
empty_functions_1 parser 0 0 N/A N/A N/A N/A Pass
empty_functions_2 parser 0 0 N/A N/A N/A N/A Pass
empty_comparison parser 245 245 N/A N/A N/A N/A Pass
else_if parser 0 0 N/A N/A N/A N/A Pass
arithmetic_1 parser 0 0 N/A N/A N/A N/A Pass
arithmetic_2 parser 0 0 N/A N/A N/A N/A Pass
broken_arithmetic parser 245 245 N/A N/A N/A N/A Pass
assignment_error parser 245 245 N/A N/A N/A N/A Pass
all_syntax_categories parser 0 0 N/A N/A N/A N/A Pass
all_syntax_categories_with_spaces parser 0 0 N/A N/A N/A N/A Pass
all_syntax_categories_compact parser 0 0 N/A N/A N/A N/A Pass
type_error parser 0 0 N/A N/A N/A N/A Pass
identifier_missing_type parser 245 245 N/A N/A N/A N/A Pass
nested_conditional_statements parser 0 0 N/A N/A N/A N/A Pass
empty_conditional parser 245 245 N/A N/A N/A N/A Pass
if_empty_body parser 0 0 N/A N/A N/A N/A Pass
statements_as_expressions parser 245 245 N/A N/A N/A N/A Pass
deep_body_nesting parser 0 0 N/A N/A N/A N/A Pass
variable_initialization parser 245 245 N/A N/A N/A N/A Pass
returning_multiple_times parser 0 0 N/A N/A N/A N/A Pass
else parser 245 245 N/A N/A N/A N/A Pass
struct_wrong parser 245 245 N/A N/A N/A N/A Pass
struct_usage parser 0 0 N/A N/A N/A N/A Pass
struct_declaration parser 0 0 N/A N/A N/A N/A Pass
ternary_comparison parser 0 0 N/A N/A N/A N/A Pass
pointer_pointer parser 0 0 N/A N/A N/A N/A Pass
pointer_dereference parser 0 0 N/A N/A N/A N/A Pass
struct_pointer_dereference parser 0 0 N/A N/A N/A N/A Pass
double_reference parser 245 245 N/A N/A N/A N/A Pass
type_cast parser 245 245 N/A N/A N/A N/A Pass
Test nameComponentCompiler exit codeExpected compiler exit codeCompiled program codeExpected compiled program codeMemory accessesMax memory accessesResultCompiler LogSimulator errors
fibonacci ast 1 0 N/A N/A N/A N/A Fail
loop break continue ast 1 0 N/A N/A N/A N/A Fail
escaped chars ast 1 0 N/A N/A N/A N/A Fail
arithmetic interpreter ast 1 0 N/A N/A N/A N/A Fail
sort linked list ast 1 0 N/A N/A N/A N/A Fail
arithmetics ast 1 0 N/A N/A N/A N/A Fail
arithmetics_plus ast 1 0 N/A N/A N/A N/A Fail
arithmetics_plus_mul ast 1 0 N/A N/A N/A N/A Fail
arithmetics_parentheses ast 1 0 N/A N/A N/A N/A Fail
arithmetics_modulo ast 1 0 N/A N/A N/A N/A Fail
arithmetics_division ast 1 0 N/A N/A N/A N/A Fail
unary_operator_1 ast 1 0 N/A N/A N/A N/A Fail
unary_operator_2 ast 1 0 N/A N/A N/A N/A Fail
function_call_1 ast 1 0 N/A N/A N/A N/A Fail
function_call_2 ast 1 0 N/A N/A N/A N/A Fail
return_1 ast 1 0 N/A N/A N/A N/A Fail
return_2 ast 1 0 N/A N/A N/A N/A Fail
return_3 ast 1 0 N/A N/A N/A N/A Fail
return_4 ast 1 0 N/A N/A N/A N/A Fail
nested_blocks_1 ast 1 0 N/A N/A N/A N/A Fail
nested_blocks_2 ast 1 0 N/A N/A N/A N/A Fail
blocks_in_sequence ast 1 0 N/A N/A N/A N/A Fail
assignment_1 ast 1 0 N/A N/A N/A N/A Fail
assignment_2 ast 1 0 N/A N/A N/A N/A Fail
print_s ast 1 0 N/A N/A N/A N/A Fail
read_c_1 ast 1 0 N/A N/A N/A N/A Fail
read_c_2 ast 1 0 N/A N/A N/A N/A Fail
read_i_1 ast 1 0 N/A N/A N/A N/A Fail
read_i_2 ast 1 0 N/A N/A N/A N/A Fail
print_c ast 1 0 N/A N/A N/A N/A Fail
print_i ast 1 0 N/A N/A N/A N/A Fail
while_loop ast 1 0 N/A N/A N/A N/A Fail
while_forever ast 1 0 N/A N/A N/A N/A Fail
if ast 1 0 N/A N/A N/A N/A Fail
if_else ast 1 0 N/A N/A N/A N/A Fail
if_else_if_else ast 1 0 N/A N/A N/A N/A Fail
if_if_else ast 1 0 N/A N/A N/A N/A Fail
procedure_declaration_1 ast 1 0 N/A N/A N/A N/A Fail
procedure_declaration_2 ast 1 0 N/A N/A N/A N/A Fail
procedure_declarations ast 1 0 N/A N/A N/A N/A Fail
global_variable_declaration ast 1 0 N/A N/A N/A N/A Fail
global_variable_declarations ast 1 0 N/A N/A N/A N/A Fail
local_variable_declaration ast 1 0 N/A N/A N/A N/A Fail
local_variable_declarations ast 1 0 N/A N/A N/A N/A Fail
includes ast 1 0 N/A N/A N/A N/A Fail
minimal ast 1 0 N/A N/A N/A N/A Fail
struct_use ast 1 0 N/A N/A N/A N/A Fail
strliteral ast 1 0 N/A N/A N/A N/A Fail
pointers_and_arrays_and_structs ast 1 0 N/A N/A N/A N/A Fail
struct_decl ast 1 0 N/A N/A N/A N/A Fail
assignment_expression ast 1 0 N/A N/A N/A N/A Fail
fibonacci sem 1 0 N/A N/A N/A N/A Fail
arithmetic interpreter sem 1 0 N/A N/A N/A N/A Fail
sort linked list sem 1 0 N/A N/A N/A N/A Fail
pass array with correct size sem 1 0 N/A N/A N/A N/A Fail
pass array with incorrect size sem 1 240 N/A N/A N/A N/A Fail
pass array with incorrect dims sem 1 240 N/A N/A N/A N/A Fail
minimal sem 1 0 N/A N/A N/A N/A Fail
global_declaration_1 sem 1 0 N/A N/A N/A N/A Fail
duplicate_global_declarations_1 sem 1 240 N/A N/A N/A N/A Fail
duplicate_global_declarations_2 sem 1 240 N/A N/A N/A N/A Fail
many_duplicate_global_declarations sem 1 240 N/A N/A N/A N/A Fail
global_shadowing_1 sem 1 0 N/A N/A N/A N/A Fail
global_shadowing_2 sem 1 0 N/A N/A N/A N/A Fail
global_shadowing_3 sem 1 240 N/A N/A N/A N/A Fail
global_shadowing_4 sem 1 0 N/A N/A N/A N/A Fail
global_shadowing_5 sem 1 240 N/A N/A N/A N/A Fail
local_shadowing_1 sem 1 0 N/A N/A N/A N/A Fail
local_shadowing_2 sem 1 0 N/A N/A N/A N/A Fail
mutual_recursion sem 1 240 N/A N/A N/A N/A Fail
undeclared_function_1 sem 1 240 N/A N/A N/A N/A Fail
undeclared_function_2 sem 1 240 N/A N/A N/A N/A Fail
undeclared_parameter sem 1 240 N/A N/A N/A N/A Fail
print_s sem 1 0 N/A N/A N/A N/A Fail
print_i sem 1 0 N/A N/A N/A N/A Fail
print_c sem 1 0 N/A N/A N/A N/A Fail
read_i sem 1 0 N/A N/A N/A N/A Fail
read_c sem 1 0 N/A N/A N/A N/A Fail
global_variable_assignment_1 sem 1 0 N/A N/A N/A N/A Fail
global_variable_assignment_2 sem 1 240 N/A N/A N/A N/A Fail
local_variable_assignment_1 sem 1 0 N/A N/A N/A N/A Fail
local_variable_assignment_2 sem 1 240 N/A N/A N/A N/A Fail
void_variable sem 1 240 N/A N/A N/A N/A Fail
main_return_1 sem 1 0 N/A N/A N/A N/A Fail
main_return_2 sem 1 240 N/A N/A N/A N/A Fail
arity_mismatch_1 sem 1 240 N/A N/A N/A N/A Fail
arity_mismatch_2 sem 1 240 N/A N/A N/A N/A Fail
function_returns_1 sem 1 0 N/A N/A N/A N/A Fail
function_returns_2 sem 1 240 N/A N/A N/A N/A Fail
arithmetics_1 sem 1 0 N/A N/A N/A N/A Fail
arithmetics_2 sem 1 240 N/A N/A N/A N/A Fail
arithmetics_3 sem 1 240 N/A N/A N/A N/A Fail
function_call_1 sem 1 240 N/A N/A N/A N/A Fail
function_call_2 sem 1 0 N/A N/A N/A N/A Fail
conditional_1 sem 1 240 N/A N/A N/A N/A Fail
conditional_2 sem 1 240 N/A N/A N/A N/A Fail
conditional_3 sem 1 240 N/A N/A N/A N/A Fail
conditional_4 sem 1 240 N/A N/A N/A N/A Fail
shadowing_6 sem 1 0 N/A N/A N/A N/A Fail
shadowing_7 sem 1 0 N/A N/A N/A N/A Fail
shadowing_12 sem 1 240 N/A N/A N/A N/A Fail
valid_lvalues sem 1 0 N/A N/A N/A N/A Fail
invalid_lvalue sem 1 240 N/A N/A N/A N/A Fail
struct_delc sem 1 240 N/A N/A N/A N/A Fail
struct_delc_and_use sem 1 0 N/A N/A N/A N/A Fail
struct_nesting sem 1 0 N/A N/A N/A N/A Fail
assignment_expression_1 sem 1 0 N/A N/A N/A N/A Fail
assignment_expression_2 sem 1 240 N/A N/A N/A N/A Fail
assignment_expression_3 sem 1 0 N/A N/A N/A N/A Fail
multidim_array_decl sem 1 0 N/A N/A N/A N/A Fail
multidim_array_access_1 sem 1 0 N/A N/A N/A N/A Fail
multidim_array_access_2 sem 1 240 N/A N/A N/A N/A Fail