gitextract_7iu7af3r/ ├── .github/ │ └── workflows/ │ └── docs_build_deploy.yaml ├── .gitignore ├── .travis.yml ├── CMakeLists.txt ├── COPYRIGHT ├── HISTORY ├── README.md ├── appveyor.yml ├── doc/ │ ├── .gitignore │ ├── Makefile │ ├── make.bat │ ├── repl/ │ │ ├── .gitignore │ │ ├── CMakeLists.txt │ │ ├── build.txt │ │ ├── native.cpp │ │ └── static/ │ │ ├── repl-rst.css │ │ ├── repl.css │ │ ├── repl.html │ │ └── replmain.js │ ├── requirements.txt │ └── source/ │ ├── _static/ │ │ └── custom.css │ ├── _templates/ │ │ └── page.html │ ├── conf.py │ ├── diff_from_squirrel.rst │ ├── index.rst │ ├── introduction.rst │ ├── modules/ │ │ ├── bindings.rst │ │ └── index.rst │ ├── quirrel.py │ ├── quirrel_pygment_lexer.py │ ├── reference/ │ │ ├── api/ │ │ │ ├── bytecode_serialization.rst │ │ │ ├── calls.rst │ │ │ ├── compiler.rst │ │ │ ├── debug_interface.rst │ │ │ ├── garbage_collector.rst │ │ │ ├── object_creation_and_handling.rst │ │ │ ├── object_manipulation.rst │ │ │ ├── raw_object_handling.rst │ │ │ ├── stack_operations.rst │ │ │ └── virtual_machine.rst │ │ ├── api_reference.rst │ │ ├── embedding/ │ │ │ ├── build_configuration.rst │ │ │ ├── calling_a_function.rst │ │ │ ├── compiling_a_script.rst │ │ │ ├── creating_a_c_function.rst │ │ │ ├── debug_interface.rst │ │ │ ├── error_conventions.rst │ │ │ ├── memory_management.rst │ │ │ ├── references_from_c.rst │ │ │ ├── runtime_error_handling.rst │ │ │ ├── tables_and_arrays_manipulation.rst │ │ │ ├── the_registry_table.rst │ │ │ ├── the_stack.rst │ │ │ ├── userdata_and_userpointers.rst │ │ │ └── vm_initialization.rst │ │ ├── embedding_squirrel.rst │ │ ├── index.rst │ │ ├── language/ │ │ │ ├── arrays.rst │ │ │ ├── builtin_functions.rst │ │ │ ├── classes.rst │ │ │ ├── compiler_directives.rst │ │ │ ├── constants_and_enumerations.rst │ │ │ ├── datatypes.rst │ │ │ ├── destructuring_assignment.rst │ │ │ ├── expressions.rst │ │ │ ├── functions.rst │ │ │ ├── generators.rst │ │ │ ├── lexical_structure.rst │ │ │ ├── limitations.rst │ │ │ ├── metamethods.rst │ │ │ ├── statements.rst │ │ │ ├── string_interpolation.rst │ │ │ ├── tables.rst │ │ │ ├── threads.rst │ │ │ ├── type_annotations.rst │ │ │ └── weak_references.rst │ │ └── language.rst │ ├── repl/ │ │ └── index.rst │ ├── rfcs/ │ │ ├── README.md │ │ └── STATUS.md │ └── stdlib/ │ ├── index.rst │ ├── introduction.rst │ ├── stdauxlib.rst │ ├── stddatetimelib.rst │ ├── stddebuglib.rst │ ├── stdiolib.rst │ ├── stdiostreamlib.rst │ ├── stdmathlib.rst │ ├── stdstringlib.rst │ └── stdsystemlib.rst ├── helpers/ │ └── keyValueFile.h ├── include/ │ ├── sq_char_class.h │ ├── sqconfig.h │ ├── sqext.h │ ├── sqio.h │ ├── sqstdaux.h │ ├── sqstdblob.h │ ├── sqstddatetime.h │ ├── sqstddebug.h │ ├── sqstdio.h │ ├── sqstdmath.h │ ├── sqstdstring.h │ ├── sqstdsystem.h │ └── squirrel.h ├── internal/ │ ├── sq_safe_shift.h │ └── sqstringlib.h ├── scripts/ │ ├── samples/ │ │ ├── ackermann.nut │ │ ├── array.nut │ │ ├── class.nut │ │ ├── fibonacci.nut │ │ ├── flow.nut │ │ ├── generators.nut │ │ ├── hello.nut │ │ ├── list.nut │ │ ├── loops.nut │ │ ├── matrix.nut │ │ ├── metamethods.nut │ │ ├── methcall.nut │ │ ├── module_1.nut │ │ ├── module_2.nut │ │ ├── module_demo.nut │ │ ├── regex.nut │ │ └── tailstate.nut │ └── std/ │ ├── analyzer.nut │ └── functools.nut ├── sq/ │ ├── CMakeLists.txt │ ├── sq.cpp │ └── sq_test_natives.cpp ├── sqmodules/ │ ├── CMakeLists.txt │ ├── deffileaccess.cpp │ ├── helpers.cpp │ ├── helpers.h │ ├── path.cpp │ ├── path.h │ ├── span.h │ ├── sqmodules.cpp │ └── sqmodules.h ├── sqrat/ │ ├── README.txt │ └── include/ │ ├── sqrat/ │ │ ├── sqratAllocator.h │ │ ├── sqratArray.h │ │ ├── sqratClass.h │ │ ├── sqratClassType.h │ │ ├── sqratConst.h │ │ ├── sqratFunction.h │ │ ├── sqratGlobalMethods.h │ │ ├── sqratMemberMethods.h │ │ ├── sqratObject.h │ │ ├── sqratScript.h │ │ ├── sqratTable.h │ │ ├── sqratTypes.h │ │ └── sqratUtil.h │ └── sqrat.h ├── sqstdlib/ │ ├── CMakeLists.txt │ ├── sqstdaux.cpp │ ├── sqstdblob.cpp │ ├── sqstdblobimpl.h │ ├── sqstddatetime.cpp │ ├── sqstddebug.cpp │ ├── sqstdhash.cpp │ ├── sqstdhash.h │ ├── sqstdio.cpp │ ├── sqstdmath.cpp │ ├── sqstdrex.cpp │ ├── sqstdserialization.cpp │ ├── sqstdserialization.h │ ├── sqstdstream.cpp │ ├── sqstdstream.h │ ├── sqstdstring.cpp │ └── sqstdsystem.cpp ├── squirrel/ │ ├── CMakeLists.txt │ ├── ast_tools/ │ │ └── ast_indent_render.h │ ├── compiler/ │ │ ├── CMakeLists.txt │ │ ├── COPYRIGHT │ │ ├── arena.h │ │ ├── ast.cpp │ │ ├── ast.h │ │ ├── codegen.cpp │ │ ├── codegen.h │ │ ├── compilationcontext.cpp │ │ ├── compilationcontext.h │ │ ├── compiler.cpp │ │ ├── compiler.h │ │ ├── constgen.cpp │ │ ├── constgen.h │ │ ├── lex_tokens.h │ │ ├── lexer.cpp │ │ ├── lexer.h │ │ ├── optimizations/ │ │ │ ├── closureHoisting.cpp │ │ │ └── closureHoisting.h │ │ ├── optimizer.cpp │ │ ├── optimizer.h │ │ ├── parser.cpp │ │ ├── parser.h │ │ ├── sourceloc.h │ │ ├── sqdump.cpp │ │ ├── sqfuncstate.cpp │ │ ├── sqfuncstate.h │ │ ├── sqio.cpp │ │ ├── sqtypeparser.cpp │ │ ├── sqtypeparser.h │ │ ├── static_analyzer/ │ │ │ ├── analyzer.cpp │ │ │ ├── analyzer.h │ │ │ ├── analyzer_internal.h │ │ │ ├── assign_seq_terminator.h │ │ │ ├── ast_helpers.h │ │ │ ├── breakable_scope.h │ │ │ ├── checker_visitor.cpp │ │ │ ├── checker_visitor.h │ │ │ ├── config.cpp │ │ │ ├── config.h │ │ │ ├── function_info.h │ │ │ ├── function_ret_type_eval.cpp │ │ │ ├── function_ret_type_eval.h │ │ │ ├── global_state.cpp │ │ │ ├── global_state.h │ │ │ ├── loop_terminator_collector.h │ │ │ ├── modification_checker.h │ │ │ ├── name_shadowing_checker.cpp │ │ │ ├── name_shadowing_checker.h │ │ │ ├── naming.cpp │ │ │ ├── naming.h │ │ │ ├── node_complexity_counter.h │ │ │ ├── node_diff_computer.h │ │ │ ├── node_equal_checker.h │ │ │ ├── operator_classification.h │ │ │ ├── symbol_info.h │ │ │ ├── value_ref.cpp │ │ │ ├── value_ref.h │ │ │ ├── var_scope.cpp │ │ │ └── var_scope.h │ │ └── typeinference.cpp │ ├── opcodes.h │ ├── sqapi.cpp │ ├── sqarray.h │ ├── sqbaselib.cpp │ ├── sqclass.cpp │ ├── sqclass.h │ ├── sqclosure.h │ ├── sqdebug.cpp │ ├── sqdedupshrinker.cpp │ ├── sqext.cpp │ ├── sqfuncproto.h │ ├── sqmem.cpp │ ├── sqobject.cpp │ ├── sqobject.h │ ├── sqpcheader.h │ ├── sqstate.cpp │ ├── sqstate.h │ ├── sqstring.h │ ├── sqstringlib.cpp │ ├── sqtable.cpp │ ├── sqtable.h │ ├── squserdata.h │ ├── squtils.h │ ├── sqvm.cpp │ ├── sqvm.h │ ├── vartrace.cpp │ ├── vartrace.h │ └── vartracestub.cpp ├── squirrel-config.cmake.in ├── testData/ │ ├── ast/ │ │ ├── ast_render/ │ │ │ ├── all_syntax.nut │ │ │ └── all_syntax.opt.txt │ │ └── optimizations/ │ │ └── closureHoisting/ │ │ ├── classCrossFunc.nut │ │ ├── classCrossFunc.opt.txt │ │ ├── classSimple.nut │ │ ├── classSimple.opt.txt │ │ ├── constDep.nut │ │ ├── constDep.opt.txt │ │ ├── constFunc.nut │ │ ├── constFunc.opt.txt │ │ ├── deepUnchained.nut │ │ ├── deepUnchained.opt.txt │ │ ├── externalSymbol.nut │ │ ├── externalSymbol.opt.txt │ │ ├── implicitChainedFuncs.nut │ │ ├── implicitChainedFuncs.opt.txt │ │ ├── implicitChainedFuncs2.nut │ │ ├── implicitChainedFuncs2.opt.txt │ │ ├── indirectLocalCapture.nut │ │ ├── indirectLocalCapture.opt.txt │ │ ├── manyFuncs.nut │ │ ├── manyFuncs.opt.txt │ │ ├── multiDepthCapture.nut │ │ ├── multiDepthCapture.opt.txt │ │ ├── nestedParamShadow.nut │ │ ├── nestedParamShadow.opt.txt │ │ ├── paramDefaultCapture.nut │ │ ├── paramDefaultCapture.opt.txt │ │ ├── recursion1.nut │ │ ├── recursion1.opt.txt │ │ ├── simple.nut │ │ ├── simple.opt.txt │ │ ├── simple2.nut │ │ ├── simple2.opt.txt │ │ ├── tooManyLocals.nut │ │ ├── tooManyLocals.opt.txt │ │ ├── typedDefaultReturnType.nut │ │ └── typedDefaultReturnType.opt.txt │ ├── diagnostics/ │ │ ├── 1000_local_variables.diag.txt │ │ ├── 1000_local_variables.nut │ │ ├── 50k_access_member.diag.txt │ │ ├── 50k_access_member.nut │ │ ├── 50k_curly_brackets.diag.txt │ │ ├── 50k_curly_brackets.nut │ │ ├── 50k_function_calls.diag.txt │ │ ├── 50k_function_calls.nut │ │ ├── 50k_lambdas.diag.txt │ │ ├── 50k_lambdas.nut │ │ ├── 50k_nested_tables.diag.txt │ │ ├── 50k_nested_tables.nut │ │ ├── 50k_not.diag.txt │ │ ├── 50k_not.nut │ │ ├── 50k_paren_brackets.diag.txt │ │ ├── 50k_paren_brackets.nut │ │ ├── 50k_square_brackets.diag.txt │ │ ├── 50k_square_brackets.nut │ │ ├── 50r_binop.diag.txt │ │ ├── 50r_binop.nut │ │ ├── assign_to_expr.diag.txt │ │ ├── assign_to_expr.nut │ │ ├── assign_to_expr2.diag.txt │ │ ├── assign_to_expr2.nut │ │ ├── assign_to_optional_7.diag.txt │ │ ├── assign_to_optional_7.nut │ │ ├── base_as_array_assign.diag.txt │ │ ├── base_as_array_assign.nut │ │ ├── base_as_array_pp.diag.txt │ │ ├── base_as_array_pp.nut │ │ ├── base_pp.diag.txt │ │ ├── base_pp.nut │ │ ├── base_x_pp.diag.txt │ │ ├── base_x_pp.nut │ │ ├── binding_assign.diag.txt │ │ ├── binding_assign.nut │ │ ├── clone_op_allowed.diag.txt │ │ ├── clone_op_allowed.nut.txt │ │ ├── clone_op_forbiden.diag.txt │ │ ├── clone_op_forbiden.nut.txt │ │ ├── compilation_errors/ │ │ │ ├── lex_errors/ │ │ │ │ ├── empty_literal.diag.txt │ │ │ │ ├── empty_literal.nut │ │ │ │ ├── fp_exp_expected.diag.txt │ │ │ │ ├── fp_exp_expected.nut │ │ │ │ ├── hex_digits_expected.diag.txt │ │ │ │ ├── hex_digits_expected.nut │ │ │ │ ├── hex_numbers_expected.diag.txt │ │ │ │ ├── hex_numbers_expected.nut │ │ │ │ ├── hex_too_many_digits.diag.txt │ │ │ │ ├── hex_too_many_digits.nut │ │ │ │ ├── invalid_token.diag.txt │ │ │ │ ├── invalid_token.nut │ │ │ │ ├── literal_overflow.diag.txt │ │ │ │ ├── literal_overflow.nut │ │ │ │ ├── literal_underflow.diag.txt │ │ │ │ ├── literal_underflow.nut │ │ │ │ ├── malformed_number.diag.txt │ │ │ │ ├── malformed_number.nut │ │ │ │ ├── newline_in_const.diag.txt │ │ │ │ ├── newline_in_const.nut │ │ │ │ ├── octal_not_supported.diag.txt │ │ │ │ ├── octal_not_supported.nut │ │ │ │ ├── trailing_block_comment.diag.txt │ │ │ │ ├── trailing_block_comment.nut │ │ │ │ ├── unexpected_char.diag.txt │ │ │ │ ├── unexpected_char.nut │ │ │ │ ├── unfinished_string.diag.txt │ │ │ │ ├── unfinished_string.nut │ │ │ │ ├── unrecognised_escape.diag.txt │ │ │ │ └── unrecognised_escape.nut │ │ │ ├── sema_errors/ │ │ │ │ ├── assign_to_binding.diag.txt │ │ │ │ ├── assign_to_binding.nut │ │ │ │ ├── assign_to_expr.diag.txt │ │ │ │ ├── assign_to_expr.nut │ │ │ │ ├── cannot_delete.diag.txt │ │ │ │ ├── cannot_delete.nut │ │ │ │ ├── conflicts_with.diag.txt │ │ │ │ ├── conflicts_with.nut │ │ │ │ ├── constant_field_not_found.diag.txt │ │ │ │ ├── constant_field_not_found.nut │ │ │ │ ├── constant_slot_not_found.diag.txt │ │ │ │ ├── constant_slot_not_found.nut │ │ │ │ ├── duplicate_func_attr.diag.txt │ │ │ │ ├── duplicate_func_attr.nut │ │ │ │ ├── duplicate_key.diag.txt │ │ │ │ ├── duplicate_key.nut │ │ │ │ ├── id_is_not_const.diag.txt │ │ │ │ ├── id_is_not_const.nut │ │ │ │ ├── inc_dec_not_assignable.diag.txt │ │ │ │ ├── inc_dec_not_assignable.nut │ │ │ │ ├── initialization_required.diag.txt │ │ │ │ ├── initialization_required.nut │ │ │ │ ├── invalid_enum.diag.txt │ │ │ │ ├── invalid_enum.nut │ │ │ │ ├── local_slot_create.diag.txt │ │ │ │ ├── local_slot_create.nut │ │ │ │ ├── loop_controller_not_in_loop_break.diag.txt │ │ │ │ ├── loop_controller_not_in_loop_break.nut │ │ │ │ ├── loop_controller_not_in_loop_continue.diag.txt │ │ │ │ ├── loop_controller_not_in_loop_continue.nut │ │ │ │ ├── not_allowed_in_const.diag.txt │ │ │ │ ├── not_allowed_in_const.nut │ │ │ │ ├── only_single_variable_declaration.diag.txt │ │ │ │ ├── only_single_variable_declaration.nut │ │ │ │ ├── same_foreach_kv_names.diag.txt │ │ │ │ ├── same_foreach_kv_names.nut │ │ │ │ ├── space_sep_field_name.diag.txt │ │ │ │ ├── space_sep_field_name.nut │ │ │ │ ├── too_many_locals.diag.txt │ │ │ │ ├── too_many_locals.nut │ │ │ │ ├── type_differs.diag.txt │ │ │ │ ├── type_differs.nut │ │ │ │ ├── uninitialized_binding.diag.txt │ │ │ │ ├── uninitialized_binding.nut │ │ │ │ ├── unknown_symbol.diag.txt │ │ │ │ └── unknown_symbol.nut │ │ │ ├── syntax_errors/ │ │ │ │ ├── assign_inside_forbidden.diag.txt │ │ │ │ ├── assign_inside_forbidden.nut │ │ │ │ ├── broken_slot_declaration.diag.txt │ │ │ │ ├── broken_slot_declaration.nut │ │ │ │ ├── compiler_internals_forbidden.diag.txt │ │ │ │ ├── compiler_internals_forbidden.nut │ │ │ │ ├── delete_op_forbidden.diag.txt │ │ │ │ ├── delete_op_forbidden.nut │ │ │ │ ├── end_of_stmt_expected.diag.txt │ │ │ │ ├── end_of_stmt_expected.nut │ │ │ │ ├── expected_bracket.diag.txt │ │ │ │ ├── expected_bracket.nut │ │ │ │ ├── expected_colnum.diag.txt │ │ │ │ ├── expected_colnum.nut │ │ │ │ ├── expected_expression.diag.txt │ │ │ │ ├── expected_expression.nut │ │ │ │ ├── expected_identifier.diag.txt │ │ │ │ ├── expected_identifier.nut │ │ │ │ ├── expected_linenum.diag.txt │ │ │ │ ├── expected_linenum.nut │ │ │ │ ├── expected_token_brace.diag.txt │ │ │ │ ├── expected_token_brace.nut │ │ │ │ ├── expected_token_paren.diag.txt │ │ │ │ ├── expected_token_paren.nut │ │ │ │ ├── expected_while.diag.txt │ │ │ │ ├── expected_while.nut │ │ │ │ ├── global_consts_only.diag.txt │ │ │ │ ├── global_consts_only.nut │ │ │ │ ├── invalid_type_name.diag.txt │ │ │ │ ├── invalid_type_name.nut │ │ │ │ ├── invalid_type_name_suggestion.diag.txt │ │ │ │ ├── invalid_type_name_suggestion.nut │ │ │ │ ├── multiple_docstrings.diag.txt │ │ │ │ ├── multiple_docstrings.nut │ │ │ │ ├── root_table_forbidden.diag.txt │ │ │ │ ├── root_table_forbidden.nut │ │ │ │ ├── scalar_expected.diag.txt │ │ │ │ ├── scalar_expected.nut │ │ │ │ ├── unsupported_directive.diag.txt │ │ │ │ ├── unsupported_directive.nut │ │ │ │ ├── vararg_with_default.diag.txt │ │ │ │ └── vararg_with_default.nut │ │ │ └── type_inference/ │ │ │ ├── test_arithmetic_mismatch.diag.txt │ │ │ ├── test_arithmetic_mismatch.nut │ │ │ ├── test_array_literal.diag.txt │ │ │ ├── test_array_literal.nut │ │ │ ├── test_array_return.diag.txt │ │ │ ├── test_array_return.nut │ │ │ ├── test_array_to_int.diag.txt │ │ │ ├── test_array_to_int.nut │ │ │ ├── test_assignment_chain.diag.txt │ │ │ ├── test_assignment_chain.nut │ │ │ ├── test_call_result_type.diag.txt │ │ │ ├── test_call_result_type.nut │ │ │ ├── test_call_union_return.diag.txt │ │ │ ├── test_call_union_return.nut │ │ │ ├── test_class_literal.diag.txt │ │ │ ├── test_class_literal.nut │ │ │ ├── test_comparison_to_int.diag.txt │ │ │ ├── test_comparison_to_int.nut │ │ │ ├── test_complex_assign_mismatch.diag.txt │ │ │ ├── test_complex_assign_mismatch.nut │ │ │ ├── test_complex_bitwise.diag.txt │ │ │ ├── test_complex_bitwise.nut │ │ │ ├── test_complex_call_chain.diag.txt │ │ │ ├── test_complex_call_chain.nut │ │ │ ├── test_complex_deep_nesting.diag.txt │ │ │ ├── test_complex_deep_nesting.nut │ │ │ ├── test_complex_logical.diag.txt │ │ │ ├── test_complex_logical.nut │ │ │ ├── test_complex_mega.diag.txt │ │ │ ├── test_complex_mega.nut │ │ │ ├── test_complex_mixed_arithmetic.diag.txt │ │ │ ├── test_complex_mixed_arithmetic.nut │ │ │ ├── test_complex_multifunction.diag.txt │ │ │ ├── test_complex_multifunction.nut │ │ │ ├── test_complex_nested_ternary.diag.txt │ │ │ ├── test_complex_nested_ternary.nut │ │ │ ├── test_complex_nullcoalesce.diag.txt │ │ │ ├── test_complex_nullcoalesce.nut │ │ │ ├── test_complex_pure_chain.diag.txt │ │ │ ├── test_complex_pure_chain.nut │ │ │ ├── test_complex_return_expr.diag.txt │ │ │ ├── test_complex_return_expr.nut │ │ │ ├── test_complex_table_ternary.diag.txt │ │ │ ├── test_complex_table_ternary.nut │ │ │ ├── test_const_array.diag.txt │ │ │ ├── test_const_array.nut │ │ │ ├── test_const_array2.diag.txt │ │ │ ├── test_const_array2.nut │ │ │ ├── test_const_array3.diag.txt │ │ │ ├── test_const_array3.nut │ │ │ ├── test_const_array4.diag.txt │ │ │ ├── test_const_array4.nut │ │ │ ├── test_const_function.diag.txt │ │ │ ├── test_const_function.nut │ │ │ ├── test_const_inline.diag.txt │ │ │ ├── test_const_inline.nut │ │ │ ├── test_const_table.diag.txt │ │ │ ├── test_const_table.nut │ │ │ ├── test_destructure_array_default_mismatch.diag.txt │ │ │ ├── test_destructure_array_default_mismatch.nut │ │ │ ├── test_destructure_complex.diag.txt │ │ │ ├── test_destructure_complex.nut │ │ │ ├── test_destructure_table_mismatch.diag.txt │ │ │ ├── test_destructure_table_mismatch.nut │ │ │ ├── test_field_access_unknown.diag.txt │ │ │ ├── test_field_access_unknown.nut │ │ │ ├── test_freeze_type_mismatch.diag.txt │ │ │ ├── test_freeze_type_mismatch.nut │ │ │ ├── test_function_literal.diag.txt │ │ │ ├── test_function_literal.nut │ │ │ ├── test_instance_from_class.diag.txt │ │ │ ├── test_instance_from_class.nut │ │ │ ├── test_literal_float_to_int.diag.txt │ │ │ ├── test_literal_float_to_int.nut │ │ │ ├── test_literal_int_to_string.diag.txt │ │ │ ├── test_literal_int_to_string.nut │ │ │ ├── test_literal_string_to_int.diag.txt │ │ │ ├── test_literal_string_to_int.nut │ │ │ ├── test_return_float_to_int.diag.txt │ │ │ ├── test_return_float_to_int.nut │ │ │ ├── test_return_literal_mismatch.diag.txt │ │ │ ├── test_return_literal_mismatch.nut │ │ │ ├── test_slot_access_unknown.diag.txt │ │ │ ├── test_slot_access_unknown.nut │ │ │ ├── test_string_concat_to_int.diag.txt │ │ │ ├── test_string_concat_to_int.nut │ │ │ ├── test_table_literal.diag.txt │ │ │ ├── test_table_literal.nut │ │ │ ├── test_table_return.diag.txt │ │ │ ├── test_table_return.nut │ │ │ ├── test_table_to_string.diag.txt │ │ │ ├── test_table_to_string.nut │ │ │ ├── test_ternary_mismatch.diag.txt │ │ │ ├── test_ternary_mismatch.nut │ │ │ ├── test_typeof_to_int.diag.txt │ │ │ ├── test_typeof_to_int.nut │ │ │ ├── test_unknown_passthrough.diag.txt │ │ │ └── test_unknown_passthrough.nut │ │ ├── const_scope_1.diag.txt │ │ ├── const_scope_1.nut │ │ ├── const_scope_2.diag.txt │ │ ├── const_scope_2.nut │ │ ├── const_scope_3.diag.txt │ │ ├── const_scope_3.nut │ │ ├── continue_in_codeblock.diag.txt │ │ ├── continue_in_codeblock.nut │ │ ├── delete_base.diag.txt │ │ ├── delete_base.nut │ │ ├── delete_forbid_pragma.diag.txt │ │ ├── delete_forbid_pragma.nut.txt │ │ ├── destrucuring_var_decl_in_if.diag.txt │ │ ├── destrucuring_var_decl_in_if.nut │ │ ├── float_overflow.diag.txt │ │ ├── float_overflow.nut │ │ ├── float_underflow.diag.txt │ │ ├── float_underflow.nut │ │ ├── foreach_destr_typed_default.diag.txt │ │ ├── foreach_destr_typed_default.nut │ │ ├── hex_overflow.diag.txt │ │ ├── hex_overflow.nut │ │ ├── if_var_decl_init.diag.txt │ │ ├── if_var_decl_init.nut │ │ ├── import_01.diag.txt │ │ ├── import_01.nut │ │ ├── import_02.diag.txt │ │ ├── import_02.nut │ │ ├── import_03.diag.txt │ │ ├── import_03.nut │ │ ├── import_04.diag.txt │ │ ├── import_04.nut │ │ ├── import_05.diag.txt │ │ ├── import_05.nut │ │ ├── import_06.diag.txt │ │ ├── import_06.nut │ │ ├── import_07.diag.txt │ │ ├── import_07.nut │ │ ├── import_error.diag.txt │ │ ├── import_error.nut │ │ ├── init_with_wrong_type.diag.txt │ │ ├── init_with_wrong_type.nut │ │ ├── integer_overflow.diag.txt │ │ ├── integer_overflow.nut │ │ ├── integer_overflow_2.diag.txt │ │ ├── integer_overflow_2.nut │ │ ├── integer_overflow_int_max.diag.txt │ │ ├── integer_overflow_int_max.nut │ │ ├── interp_str_hanging_missed_ccurvy.diag.txt │ │ ├── interp_str_hanging_missed_ccurvy.nut │ │ ├── interp_str_not_string.diag.txt │ │ ├── interp_str_not_string.nut │ │ ├── interp_str_not_string_2.diag.txt │ │ ├── interp_str_not_string_2.nut │ │ ├── interp_str_wrong_template.diag.txt │ │ ├── interp_str_wrong_template.nut │ │ ├── invalid_float_1.diag.txt │ │ ├── invalid_float_1.nut │ │ ├── invalid_float_2.diag.txt │ │ ├── invalid_float_2.nut │ │ ├── invalid_float_3.diag.txt │ │ ├── invalid_float_3.nut │ │ ├── invalid_string_interp_1.diag.txt │ │ ├── invalid_string_interp_1.nut │ │ ├── invalid_type_hint_1.diag.txt │ │ ├── invalid_type_hint_1.nut │ │ ├── invalid_type_hint_2.diag.txt │ │ ├── invalid_type_hint_2.nut │ │ ├── invalid_type_hint_3.diag.txt │ │ ├── invalid_type_hint_3.nut │ │ ├── leading_zero_1.diag.txt │ │ ├── leading_zero_1.nut │ │ ├── leading_zero_2.diag.txt │ │ ├── leading_zero_2.nut │ │ ├── leading_zero_3.diag.txt │ │ ├── leading_zero_3.nut │ │ ├── letAssign.diag.txt │ │ ├── letAssign.nut │ │ ├── many_args_in_function_call.diag.txt │ │ ├── many_args_in_function_call.nut │ │ ├── need_space_after_float.diag.txt │ │ ├── need_space_after_float.nut │ │ ├── need_space_after_hex.diag.txt │ │ ├── need_space_after_hex.nut │ │ ├── need_space_after_int.diag.txt │ │ ├── need_space_after_int.nut │ │ ├── return_type_check_1.diag.txt │ │ ├── return_type_check_1.nut │ │ ├── single_var_decl_in_if.diag.txt │ │ ├── single_var_decl_in_if.nut │ │ ├── space_sep_name.diag.txt │ │ ├── space_sep_name.nut.txt │ │ ├── space_sep_name_space.diag.txt │ │ ├── space_sep_name_space.nut.txt │ │ ├── too_large_static_memo_expr.diag.txt │ │ ├── too_large_static_memo_expr.nut.txt │ │ ├── too_many_locals2.diag.txt │ │ ├── too_many_locals2.nut │ │ ├── type_hints_01.diag.txt │ │ ├── type_hints_01.nut │ │ ├── type_hints_02.diag.txt │ │ ├── type_hints_02.nut │ │ ├── type_hints_03.diag.txt │ │ ├── type_hints_03.nut │ │ ├── type_hints_04.diag.txt │ │ ├── type_hints_04.nut │ │ ├── type_hints_05.diag.txt │ │ ├── type_hints_05.nut │ │ ├── type_hints_06.diag.txt │ │ ├── type_hints_06.nut │ │ ├── unfinished_hex.diag.txt │ │ ├── unfinished_hex.nut │ │ ├── var_scope_1.diag.txt │ │ ├── var_scope_1.nut │ │ ├── var_scope_2.diag.txt │ │ ├── var_scope_2.nut │ │ ├── var_scope_3.diag.txt │ │ └── var_scope_3.nut │ ├── exec/ │ │ ├── array_methods.nut │ │ ├── array_methods.out │ │ ├── basics.nut │ │ ├── basics.out │ │ ├── call_constructor_recursion.nut │ │ ├── call_constructor_recursion.out │ │ ├── class_yield.nut │ │ ├── class_yield.out │ │ ├── closure_hoist_typed_default.nut │ │ ├── closure_hoist_typed_default.out │ │ ├── closure_hoist_typed_return.nut │ │ ├── closure_hoist_typed_return.out │ │ ├── compare_int_float.nut │ │ ├── compare_int_float.out │ │ ├── compare_int_int.nut │ │ ├── compare_int_int.out │ │ ├── const_fold.nut │ │ ├── const_fold.out │ │ ├── const_in_closures.nut │ │ ├── const_in_closures.out │ │ ├── coroutines.nut │ │ ├── coroutines.out │ │ ├── deep_loop_variable.nut │ │ ├── deep_loop_variable.out │ │ ├── depth_check.nut │ │ ├── depth_check.out │ │ ├── destructuring/ │ │ │ ├── foreach_capture_destruct_idx.nut │ │ │ ├── foreach_capture_destruct_idx.out │ │ │ ├── foreach_capture_idx_val.nut │ │ │ ├── foreach_capture_idx_val.out │ │ │ ├── foreach_capture_plain_val.nut │ │ │ ├── foreach_capture_plain_val.out │ │ │ ├── foreach_capture_shadowed.nut │ │ │ ├── foreach_capture_shadowed.out │ │ │ ├── foreach_destr_default_closure.nut │ │ │ ├── foreach_destr_default_closure.out │ │ │ ├── foreach_destruct_empty_pattern.nut │ │ │ ├── foreach_destruct_empty_pattern.out │ │ │ ├── foreach_destructuring.nut │ │ │ ├── foreach_destructuring.out │ │ │ ├── foreach_destructuring_branches.nut │ │ │ ├── foreach_destructuring_branches.out │ │ │ ├── foreach_destructuring_complex.nut │ │ │ ├── foreach_destructuring_complex.out │ │ │ ├── foreach_no_capture.nut │ │ │ ├── foreach_no_capture.out │ │ │ ├── function_param_destructuring.nut │ │ │ └── function_param_destructuring.out │ │ ├── div64_by_minus_one_opt.nut │ │ ├── div64_by_minus_one_opt.out │ │ ├── div64_by_minus_one_vm.nut │ │ ├── div64_by_minus_one_vm.out │ │ ├── div_by_minus_one_opt.nut │ │ ├── div_by_minus_one_opt.out │ │ ├── div_by_minus_one_vm.nut │ │ ├── div_by_minus_one_vm.out │ │ ├── fallback_get_recursion.nut │ │ ├── fallback_get_recursion.out │ │ ├── fuzzer_seed_106.nut │ │ ├── fuzzer_seed_106.out │ │ ├── fuzzer_seed_3250.nut │ │ ├── fuzzer_seed_3250.out │ │ ├── fuzzer_seed_7200.nut │ │ ├── fuzzer_seed_7200.out │ │ ├── import_correct.nut │ │ ├── import_correct.out │ │ ├── inexpr_block/ │ │ │ ├── inexpr_block_1.nut │ │ │ ├── inexpr_block_1.out │ │ │ ├── inexpr_block_2.nut │ │ │ ├── inexpr_block_2.out │ │ │ ├── inexpr_block_3.nut │ │ │ ├── inexpr_block_3.out │ │ │ ├── inexpr_block_4.nut │ │ │ ├── inexpr_block_4.out │ │ │ ├── inexpr_block_5.nut │ │ │ ├── inexpr_block_5.out │ │ │ ├── inexpr_block_6.nut │ │ │ ├── inexpr_block_6.out │ │ │ ├── inexpr_block_7.nut │ │ │ ├── inexpr_block_7.out │ │ │ ├── inexpr_block_8.nut │ │ │ ├── inexpr_block_8.out │ │ │ ├── test_codeblock.nut │ │ │ ├── test_codeblock.out │ │ │ ├── test_codeblock_return_in_try.nut │ │ │ ├── test_codeblock_return_in_try.out │ │ │ ├── test_codeblock_try.nut │ │ │ └── test_codeblock_try.out │ │ ├── integers.nut │ │ ├── integers.out │ │ ├── is_frozen.nut │ │ ├── is_frozen.out │ │ ├── locals_chain.nut │ │ ├── locals_chain.out │ │ ├── metamethod_error.nut │ │ ├── metamethod_error.out │ │ ├── mod64_by_minus_one_opt.nut │ │ ├── mod64_by_minus_one_opt.out │ │ ├── mod64_by_minus_one_vm.nut │ │ ├── mod64_by_minus_one_vm.out │ │ ├── mod_by_minus_one_opt.nut │ │ ├── mod_by_minus_one_opt.out │ │ ├── mod_by_minus_one_vm.nut │ │ ├── mod_by_minus_one_vm.out │ │ ├── native_fields.nut │ │ ├── native_fields.out │ │ ├── opt/ │ │ │ ├── fuzz_52807_min.nut │ │ │ ├── fuzz_52807_min.out │ │ │ ├── fuzz_min.nut │ │ │ ├── fuzz_min.out │ │ │ ├── modify_local_var.nut │ │ │ ├── modify_local_var.out │ │ │ ├── opt_reassign_addi.nut │ │ │ ├── opt_reassign_addi.out │ │ │ ├── opt_reassign_arith.nut │ │ │ ├── opt_reassign_arith.out │ │ │ ├── opt_reassign_chain.nut │ │ │ ├── opt_reassign_chain.out │ │ │ ├── opt_reassign_in_scope.nut │ │ │ ├── opt_reassign_in_scope.out │ │ │ ├── opt_same_reg_fold.nut │ │ │ ├── opt_same_reg_fold.out │ │ │ ├── sqf916086.nut │ │ │ └── sqf916086.out │ │ ├── optimizer.nut │ │ ├── optimizer.out │ │ ├── optimizer_add.nut │ │ ├── optimizer_add.out │ │ ├── optimizer_mul.nut │ │ ├── optimizer_mul.out │ │ ├── parenCallee.nut │ │ ├── parenCallee.out │ │ ├── ph_optimizer_null_call_1.nut │ │ ├── ph_optimizer_null_call_1.out │ │ ├── ph_optimizer_null_call_2.nut │ │ ├── ph_optimizer_null_call_2.out │ │ ├── ph_optimizer_null_call_3.nut │ │ ├── ph_optimizer_null_call_3.out │ │ ├── runtime_type_check/ │ │ │ ├── assign_type_01.nut │ │ │ ├── assign_type_01.out │ │ │ ├── assign_type_02.nut │ │ │ ├── assign_type_02.out │ │ │ ├── assign_type_03.nut │ │ │ ├── assign_type_03.out │ │ │ ├── assign_type_04.nut │ │ │ ├── assign_type_04.out │ │ │ ├── assign_type_05.nut │ │ │ ├── assign_type_05.out │ │ │ ├── assign_type_06.nut │ │ │ ├── assign_type_06.out │ │ │ ├── assign_type_07.nut │ │ │ ├── assign_type_07.out │ │ │ ├── assign_type_08.nut │ │ │ ├── assign_type_08.out │ │ │ ├── assign_type_09.nut │ │ │ ├── assign_type_09.out │ │ │ ├── assign_type_10.nut │ │ │ ├── assign_type_10.out │ │ │ ├── assign_wrong_type_01.nut │ │ │ ├── assign_wrong_type_01.out │ │ │ ├── assign_wrong_type_02.nut │ │ │ ├── assign_wrong_type_02.out │ │ │ ├── assign_wrong_type_03.nut │ │ │ ├── assign_wrong_type_03.out │ │ │ ├── assign_wrong_type_04.nut │ │ │ ├── assign_wrong_type_04.out │ │ │ ├── assign_wrong_type_05.nut │ │ │ ├── assign_wrong_type_05.out │ │ │ ├── assign_wrong_type_06.nut │ │ │ ├── assign_wrong_type_06.out │ │ │ ├── assign_wrong_type_07.nut │ │ │ ├── assign_wrong_type_07.out │ │ │ ├── assign_wrong_type_08.nut │ │ │ ├── assign_wrong_type_08.out │ │ │ ├── assign_wrong_type_09.nut │ │ │ ├── assign_wrong_type_09.out │ │ │ ├── assign_wrong_type_10.nut │ │ │ ├── assign_wrong_type_10.out │ │ │ ├── return_type.nut │ │ │ ├── return_type.out │ │ │ ├── return_wrong_type.nut │ │ │ └── return_wrong_type.out │ │ ├── spec/ │ │ │ ├── class.nut │ │ │ ├── class.out │ │ │ ├── classInher.nut │ │ │ ├── classInher.out │ │ │ ├── class_extend.nut │ │ │ ├── class_extend.out │ │ │ ├── clone.nut │ │ │ ├── clone.out │ │ │ ├── closure.nut │ │ │ ├── closure.out │ │ │ ├── conditionalFor.nut │ │ │ ├── conditionalFor.out │ │ │ ├── const.nut │ │ │ ├── const.out │ │ │ ├── constFolding.nut │ │ │ ├── constFolding.out │ │ │ ├── constFoldingCond.nut │ │ │ ├── constFoldingCond.out │ │ │ ├── const_func.nut │ │ │ ├── const_func.out │ │ │ ├── const_func_freevars.nut │ │ │ ├── const_func_freevars.out │ │ │ ├── const_math_eval.nut │ │ │ ├── const_math_eval.out │ │ │ ├── const_with_expr.nut │ │ │ ├── const_with_expr.out │ │ │ ├── delegate_get.nut │ │ │ ├── delegate_get.out │ │ │ ├── destruct.nut │ │ │ ├── destruct.out │ │ │ ├── dowstmt.nut │ │ │ ├── dowstmt.out │ │ │ ├── enums.nut │ │ │ ├── enums.out │ │ │ ├── foreachstmt.nut │ │ │ ├── foreachstmt.out │ │ │ ├── forstmt.nut │ │ │ ├── forstmt.out │ │ │ ├── func_pure_attr.nut │ │ │ ├── func_pure_attr.out │ │ │ ├── generators.nut │ │ │ ├── generators.out │ │ │ ├── ifstmt.nut │ │ │ ├── ifstmt.out │ │ │ ├── sort.nut │ │ │ ├── sort.out │ │ │ ├── stringtmplt.nut │ │ │ ├── stringtmplt.out │ │ │ ├── trystmt.nut │ │ │ ├── trystmt.out │ │ │ ├── whilestmt.nut │ │ │ └── whilestmt.out │ │ ├── stack_metamethod.nut │ │ ├── stack_metamethod.out │ │ ├── stack_metamethod_few_args.nut │ │ ├── stack_metamethod_few_args.out │ │ ├── stack_metamethod_locals.nut │ │ ├── stack_metamethod_locals.out │ │ ├── staticmemo/ │ │ │ ├── no_memo_mutable_args.nut │ │ │ ├── no_memo_mutable_args.out │ │ │ ├── no_memo_mutable_result.nut │ │ │ ├── no_memo_mutable_result.out │ │ │ ├── static_assign_itself.nut │ │ │ ├── static_assign_itself.out │ │ │ ├── static_exception.nut │ │ │ ├── static_exception.out │ │ │ ├── static_freeze.nut │ │ │ ├── static_freeze.out │ │ │ ├── static_loop.nut │ │ │ ├── static_loop.out │ │ │ ├── static_nested.nut │ │ │ ├── static_nested.out │ │ │ ├── static_opt.nut │ │ │ ├── static_opt.out │ │ │ ├── static_opt2.nut │ │ │ ├── static_opt2.out │ │ │ ├── static_reset1.nut │ │ │ ├── static_reset1.out │ │ │ ├── static_reset2.nut │ │ │ ├── static_reset2.out │ │ │ ├── static_reset_module.nut │ │ │ ├── static_reset_module.out │ │ │ ├── static_tables.nut │ │ │ ├── static_tables.out │ │ │ ├── static_types.nut │ │ │ └── static_types.out │ │ ├── stdlib/ │ │ │ ├── blob_methods.nut │ │ │ ├── blob_methods.out │ │ │ ├── copy_content_with_replace.nut │ │ │ ├── copy_content_with_replace.out │ │ │ ├── datetime.nut │ │ │ ├── datetime.out │ │ │ ├── debug.nut │ │ │ ├── debug.out │ │ │ ├── debug_extras.nut │ │ │ ├── debug_extras.out │ │ │ ├── deep_hash.nut │ │ │ ├── deep_hash.out │ │ │ ├── deep_regex.nut │ │ │ ├── deep_regex.out │ │ │ ├── delegates.nut │ │ │ ├── delegates.out │ │ │ ├── deser_oom.nut │ │ │ ├── deser_oom.out │ │ │ ├── docstring.nut │ │ │ ├── docstring.out │ │ │ ├── file_io.nut │ │ │ ├── file_io.out │ │ │ ├── math_funcs.nut │ │ │ ├── math_funcs.out │ │ │ ├── math_min_max_clamp.nut │ │ │ ├── math_min_max_clamp.out │ │ │ ├── obj_serialization.nut │ │ │ ├── obj_serialization.out │ │ │ ├── obj_serialization_errors.nut │ │ │ ├── obj_serialization_errors.out │ │ │ ├── obj_serialization_errors_arg.nut │ │ │ ├── obj_serialization_errors_arg.out │ │ │ ├── obj_serialization_valid.nut │ │ │ ├── obj_serialization_valid.out │ │ │ ├── rawdelete.nut │ │ │ ├── rawdelete.out │ │ │ ├── regexp.nut │ │ │ ├── regexp.out │ │ │ ├── regexp_fixed_bugs.nut │ │ │ ├── regexp_fixed_bugs.out │ │ │ ├── stream_methods.nut │ │ │ ├── stream_methods.out │ │ │ ├── string.nut │ │ │ ├── string.out │ │ │ ├── string_escape.nut │ │ │ ├── string_escape.out │ │ │ ├── string_format.nut │ │ │ ├── string_format.out │ │ │ ├── swap.nut │ │ │ ├── swap.out │ │ │ ├── swap_stack_check.nut │ │ │ ├── swap_stack_check.out │ │ │ ├── system_lib.nut │ │ │ └── system_lib.out │ │ ├── string_interpolation.nut │ │ ├── string_interpolation.out │ │ ├── string_interpolation_new.nut │ │ ├── string_interpolation_new.out │ │ ├── string_methods.nut │ │ ├── string_methods.out │ │ ├── sub_int_min.nut │ │ ├── sub_int_min.out │ │ ├── surprise_js_dev.nut │ │ ├── surprise_js_dev.out │ │ ├── table_methods.nut │ │ ├── table_methods.out │ │ ├── testNullPropagation.nut │ │ ├── testNullPropagation.out │ │ ├── test_class_yield_call.nut │ │ ├── test_class_yield_call.out │ │ ├── test_shift.nut │ │ ├── test_shift.out │ │ ├── test_stale_stkbase.nut │ │ ├── test_stale_stkbase.out │ │ ├── tostring_recursion.nut │ │ ├── tostring_recursion.out │ │ ├── type_classes/ │ │ │ ├── test_builtin_constructors.nut │ │ │ ├── test_builtin_constructors.out │ │ │ ├── test_inheritance_error.nut │ │ │ ├── test_inheritance_error.out │ │ │ ├── test_unified_types.nut │ │ │ └── test_unified_types.out │ │ ├── type_hints/ │ │ │ ├── function_types.nut │ │ │ ├── function_types.out │ │ │ ├── var_decl.nut │ │ │ └── var_decl.out │ │ ├── type_inference/ │ │ │ ├── test_arithmetic_ok.nut │ │ │ ├── test_arithmetic_ok.out │ │ │ ├── test_array_literal_ok.nut │ │ │ ├── test_array_literal_ok.out │ │ │ ├── test_assignment_chain_ok.nut │ │ │ ├── test_assignment_chain_ok.out │ │ │ ├── test_call_result_ok.nut │ │ │ ├── test_call_result_ok.out │ │ │ ├── test_call_union_return_ok.nut │ │ │ ├── test_call_union_return_ok.out │ │ │ ├── test_class_literal_ok.nut │ │ │ ├── test_class_literal_ok.out │ │ │ ├── test_comparison_ok.nut │ │ │ ├── test_comparison_ok.out │ │ │ ├── test_complex_assign_ok.nut │ │ │ ├── test_complex_assign_ok.out │ │ │ ├── test_complex_bitwise_ok.nut │ │ │ ├── test_complex_bitwise_ok.out │ │ │ ├── test_complex_call_chain_ok.nut │ │ │ ├── test_complex_call_chain_ok.out │ │ │ ├── test_complex_deep_nesting_ok.nut │ │ │ ├── test_complex_deep_nesting_ok.out │ │ │ ├── test_complex_logical_ok.nut │ │ │ ├── test_complex_logical_ok.out │ │ │ ├── test_complex_mixed_arithmetic_ok.nut │ │ │ ├── test_complex_mixed_arithmetic_ok.out │ │ │ ├── test_complex_nested_ternary_ok.nut │ │ │ ├── test_complex_nested_ternary_ok.out │ │ │ ├── test_complex_nullcoalesce_ok.nut │ │ │ ├── test_complex_nullcoalesce_ok.out │ │ │ ├── test_complex_pure_chain_ok.nut │ │ │ ├── test_complex_pure_chain_ok.out │ │ │ ├── test_complex_return_expr_ok.nut │ │ │ ├── test_complex_return_expr_ok.out │ │ │ ├── test_complex_table_ternary_ok.nut │ │ │ ├── test_complex_table_ternary_ok.out │ │ │ ├── test_const_array4_ok.nut │ │ │ ├── test_const_array4_ok.out │ │ │ ├── test_const_array_ok.nut │ │ │ ├── test_const_array_ok.out │ │ │ ├── test_const_function_ok.nut │ │ │ ├── test_const_function_ok.out │ │ │ ├── test_const_inline_ok.nut │ │ │ ├── test_const_inline_ok.out │ │ │ ├── test_const_table_ok.nut │ │ │ ├── test_const_table_ok.out │ │ │ ├── test_destructure_array_default_ok.nut │ │ │ ├── test_destructure_array_default_ok.out │ │ │ ├── test_destructure_array_ok.nut │ │ │ ├── test_destructure_array_ok.out │ │ │ ├── test_destructure_from_function_ok.nut │ │ │ ├── test_destructure_from_function_ok.out │ │ │ ├── test_destructure_nested_ok.nut │ │ │ ├── test_destructure_nested_ok.out │ │ │ ├── test_destructure_table_ok.nut │ │ │ ├── test_destructure_table_ok.out │ │ │ ├── test_freeze_ok.nut │ │ │ ├── test_freeze_ok.out │ │ │ ├── test_function_literal_ok.nut │ │ │ ├── test_function_literal_ok.out │ │ │ ├── test_instance_from_class_ok.nut │ │ │ ├── test_instance_from_class_ok.out │ │ │ ├── test_literal_ok.nut │ │ │ ├── test_literal_ok.out │ │ │ ├── test_return_literal_ok.nut │ │ │ ├── test_return_literal_ok.out │ │ │ ├── test_string_concat_ok.nut │ │ │ ├── test_string_concat_ok.out │ │ │ ├── test_table_literal_ok.nut │ │ │ ├── test_table_literal_ok.out │ │ │ ├── test_table_return_ok.nut │ │ │ ├── test_table_return_ok.out │ │ │ ├── test_ternary_ok.nut │ │ │ ├── test_ternary_ok.out │ │ │ ├── test_typeof_ok.nut │ │ │ └── test_typeof_ok.out │ │ ├── valid_syntax/ │ │ │ ├── arrays.nut │ │ │ ├── arrays.out │ │ │ ├── classes.nut │ │ │ ├── classes.out │ │ │ ├── closures_scope.nut │ │ │ ├── closures_scope.out │ │ │ ├── control_flow.nut │ │ │ ├── control_flow.out │ │ │ ├── destructuring.nut │ │ │ ├── destructuring.out │ │ │ ├── enums_consts.nut │ │ │ ├── enums_consts.out │ │ │ ├── error_handling.nut │ │ │ ├── error_handling.out │ │ │ ├── functions.nut │ │ │ ├── functions.out │ │ │ ├── generators.nut │ │ │ ├── generators.out │ │ │ ├── literals.nut │ │ │ ├── literals.out │ │ │ ├── metamethods.nut │ │ │ ├── metamethods.out │ │ │ ├── misc.nut │ │ │ ├── misc.out │ │ │ ├── null_safety.nut │ │ │ ├── null_safety.out │ │ │ ├── operators.nut │ │ │ ├── operators.out │ │ │ ├── static_memo.nut │ │ │ ├── static_memo.out │ │ │ ├── strings.nut │ │ │ ├── strings.out │ │ │ ├── tables.nut │ │ │ ├── tables.out │ │ │ ├── threads.nut │ │ │ ├── threads.out │ │ │ ├── type_annotations.nut │ │ │ ├── type_annotations.out │ │ │ ├── variables.nut │ │ │ └── variables.out │ │ └── weird/ │ │ ├── 2000_args.nut │ │ ├── 2000_args.out │ │ ├── assign_to_optional_1.nut │ │ ├── assign_to_optional_1.out │ │ ├── assign_to_optional_2.nut │ │ ├── assign_to_optional_2.out │ │ ├── assign_to_optional_3.nut │ │ ├── assign_to_optional_3.out │ │ ├── many_locals.nut │ │ └── many_locals.out │ ├── proposed_optimizations/ │ │ ├── clone_newslot_vs_merge.nut │ │ ├── filter_map_folding.nut │ │ ├── filter_map_folding2.nut │ │ └── strings_folding.nut │ ├── static_analyzer/ │ │ ├── .sqconfig │ │ ├── 200_nullc.diag.txt │ │ ├── 200_nullc.nut │ │ ├── function_rt_detect.diag.txt │ │ ├── function_rt_detect.nut │ │ ├── logic_ops_paren.diag.txt │ │ ├── logic_ops_paren.nut │ │ ├── module_foo.diag.txt │ │ ├── module_foo.nut │ │ ├── nullcheck_ternary.diag.txt │ │ ├── nullcheck_ternary.nut │ │ ├── pattern_class_check.diag.txt │ │ ├── pattern_class_check.nut │ │ ├── pattern_effect_from_call.diag.txt │ │ ├── pattern_effect_from_call.nut │ │ ├── pattern_forloop_merge.diag.txt │ │ ├── pattern_forloop_merge.nut │ │ ├── pattern_intersected_assignment.diag.txt │ │ ├── pattern_intersected_assignment.nut │ │ ├── pattern_lambdas.diag.txt │ │ ├── pattern_lambdas.nut │ │ ├── pattern_loop_state.diag.txt │ │ ├── pattern_loop_state.nut │ │ ├── pattern_param_check.diag.txt │ │ ├── pattern_param_check.nut │ │ ├── w190.diag.txt │ │ ├── w190.nut │ │ ├── w192.diag.txt │ │ ├── w192.nut │ │ ├── w200.diag.txt │ │ ├── w200.nut │ │ ├── w200_3wcmp.diag.txt │ │ ├── w200_3wcmp.nut │ │ ├── w200_arith.diag.txt │ │ ├── w200_arith.nut │ │ ├── w200_arith_deep.diag.txt │ │ ├── w200_arith_deep.nut │ │ ├── w200_arith_plus_eq.diag.txt │ │ ├── w200_arith_plus_eq.nut │ │ ├── w200_special_func_name.diag.txt │ │ ├── w200_special_func_name.nut │ │ ├── w200_static_memo_expr.diag.txt │ │ ├── w200_static_memo_expr.nut │ │ ├── w200_stringconcat.diag.txt │ │ ├── w200_stringconcat.nut │ │ ├── w203.diag.txt │ │ ├── w203.nut │ │ ├── w204.diag.txt │ │ ├── w204.nut │ │ ├── w205-2.diag.txt │ │ ├── w205-2.nut │ │ ├── w205.diag.txt │ │ ├── w205.nut │ │ ├── w206.diag.txt │ │ ├── w206.nut │ │ ├── w206_arith.diag.txt │ │ ├── w206_arith.nut │ │ ├── w208.diag.txt │ │ ├── w208.nut │ │ ├── w209.diag.txt │ │ ├── w209.nut │ │ ├── w210.diag.txt │ │ ├── w210.nut │ │ ├── w210_complex.diag.txt │ │ ├── w210_complex.nut │ │ ├── w210_deep.diag.txt │ │ ├── w210_deep.nut │ │ ├── w210_def.diag.txt │ │ ├── w210_def.nut │ │ ├── w211.diag.txt │ │ ├── w211.nut │ │ ├── w212.diag.txt │ │ ├── w212.nut │ │ ├── w213.diag.txt │ │ ├── w213.nut │ │ ├── w214.diag.txt │ │ ├── w214.nut │ │ ├── w214_static_memo_expr.diag.txt │ │ ├── w214_static_memo_expr.nut │ │ ├── w215.diag.txt │ │ ├── w215.nut │ │ ├── w215_nullc.diag.txt │ │ ├── w215_nullc.nut │ │ ├── w216.diag.txt │ │ ├── w216.nut │ │ ├── w217_break.diag.txt │ │ ├── w217_break.nut │ │ ├── w217_complex.diag.txt │ │ ├── w217_complex.nut │ │ ├── w217_cond_cont.diag.txt │ │ ├── w217_cond_cont.nut │ │ ├── w217_continue.diag.txt │ │ ├── w217_continue.nut │ │ ├── w217_ret.diag.txt │ │ ├── w217_ret.nut │ │ ├── w217_throw.diag.txt │ │ ├── w217_throw.nut │ │ ├── w220.diag.txt │ │ ├── w220.nut │ │ ├── w220_deep.diag.txt │ │ ├── w220_deep.nut │ │ ├── w221.diag.txt │ │ ├── w221.nut │ │ ├── w221_delete.diag.txt │ │ ├── w221_delete.nut │ │ ├── w222.diag.txt │ │ ├── w222.nut │ │ ├── w222_deep.diag.txt │ │ ├── w222_deep.nut │ │ ├── w222_inside_detructure.diag.txt │ │ ├── w222_inside_detructure.nut │ │ ├── w223.diag.txt │ │ ├── w223.nut │ │ ├── w223_method_is.diag.txt │ │ ├── w223_method_is.nut │ │ ├── w224_then.diag.txt │ │ ├── w224_then.nut │ │ ├── w224_while.diag.txt │ │ ├── w224_while.nut │ │ ├── w225.diag.txt │ │ ├── w225.nut │ │ ├── w225_empty_stmt.diag.txt │ │ ├── w225_empty_stmt.nut │ │ ├── w225_switch.diag.txt │ │ ├── w225_switch.nut │ │ ├── w226.diag.txt │ │ ├── w226.nut │ │ ├── w227.diag.txt │ │ ├── w227.nut │ │ ├── w227_external.diag.txt │ │ ├── w227_external.nut │ │ ├── w227_fn_with_same_param.diag.txt │ │ ├── w227_fn_with_same_param.nut │ │ ├── w227_foreach_destr_shadow.diag.txt │ │ ├── w227_foreach_destr_shadow.nut │ │ ├── w227_let_init_fun.diag.txt │ │ ├── w227_let_init_fun.nut │ │ ├── w227_table.diag.txt │ │ ├── w227_table.nut │ │ ├── w227_varargs.diag.txt │ │ ├── w227_varargs.nut │ │ ├── w228.diag.txt │ │ ├── w228.nut │ │ ├── w228_2.diag.txt │ │ ├── w228_2.nut │ │ ├── w228_3.diag.txt │ │ ├── w228_3.nut │ │ ├── w228_4.diag.txt │ │ ├── w228_4.nut │ │ ├── w228_foreach_destr_default_uses.diag.txt │ │ ├── w228_foreach_destr_default_uses.nut │ │ ├── w228_table.diag.txt │ │ ├── w228_table.nut │ │ ├── w228_trivial.diag.txt │ │ ├── w228_trivial.nut │ │ ├── w229.diag.txt │ │ ├── w229.nut │ │ ├── w230_unused_import.diag.txt │ │ ├── w230_unused_import.nut │ │ ├── w231.diag.txt │ │ ├── w231.nut │ │ ├── w232_cascade.diag.txt │ │ ├── w232_cascade.nut │ │ ├── w232_false.diag.txt │ │ ├── w232_false.nut │ │ ├── w232_lambda.diag.txt │ │ ├── w232_lambda.nut │ │ ├── w232_not.diag.txt │ │ ├── w232_not.nut │ │ ├── w232_ter.diag.txt │ │ ├── w232_ter.nut │ │ ├── w232_ternary.diag.txt │ │ ├── w232_ternary.nut │ │ ├── w232_true.diag.txt │ │ ├── w232_true.nut │ │ ├── w233.diag.txt │ │ ├── w233.nut │ │ ├── w234.diag.txt │ │ ├── w234.nut │ │ ├── w234_outer.diag.txt │ │ ├── w234_outer.nut │ │ ├── w235.diag.txt │ │ ├── w235.nut │ │ ├── w236.diag.txt │ │ ├── w236.nut │ │ ├── w238_heuristic.diag.txt │ │ ├── w238_heuristic.nut │ │ ├── w238_idname.diag.txt │ │ ├── w238_idname.nut │ │ ├── w238_isis.diag.txt │ │ ├── w238_isis.nut │ │ ├── w238_merge.diag.txt │ │ ├── w238_merge.nut │ │ ├── w238_sqconfig.diag.txt │ │ ├── w238_sqconfig.nut │ │ ├── w239.diag.txt │ │ ├── w239.nut │ │ ├── w239_sqconfig.diag.txt │ │ ├── w239_sqconfig.nut │ │ ├── w240.diag.txt │ │ ├── w240.nut │ │ ├── w241.diag.txt │ │ ├── w241.nut │ │ ├── w241_conditional.diag.txt │ │ ├── w241_conditional.nut │ │ ├── w244.diag.txt │ │ ├── w244.nut │ │ ├── w248.diag.txt │ │ ├── w248.nut │ │ ├── w248_access.diag.txt │ │ ├── w248_access.nut │ │ ├── w248_additional.diag.txt │ │ ├── w248_additional.nut │ │ ├── w248_andand.diag.txt │ │ ├── w248_andand.nut │ │ ├── w248_andor.diag.txt │ │ ├── w248_andor.nut │ │ ├── w248_array.diag.txt │ │ ├── w248_array.nut │ │ ├── w248_assert.diag.txt │ │ ├── w248_assert.nut │ │ ├── w248_chain.diag.txt │ │ ├── w248_chain.nut │ │ ├── w248_complex2.diag.txt │ │ ├── w248_complex2.nut │ │ ├── w248_complex_key.diag.txt │ │ ├── w248_complex_key.nut │ │ ├── w248_complexcond.diag.txt │ │ ├── w248_complexcond.nut │ │ ├── w248_eq_get.diag.txt │ │ ├── w248_eq_get.nut │ │ ├── w248_evaled.diag.txt │ │ ├── w248_evaled.nut │ │ ├── w248_getfield.diag.txt │ │ ├── w248_getfield.nut │ │ ├── w248_in.diag.txt │ │ ├── w248_in.nut │ │ ├── w248_in_container.diag.txt │ │ ├── w248_in_container.nut │ │ ├── w248_not.diag.txt │ │ ├── w248_not.nut │ │ ├── w248_nullc_2.diag.txt │ │ ├── w248_nullc_2.nut │ │ ├── w248_nullc_3.diag.txt │ │ ├── w248_nullc_3.nut │ │ ├── w248_oror.diag.txt │ │ ├── w248_oror.nut │ │ ├── w248_oror2.diag.txt │ │ ├── w248_oror2.nut │ │ ├── w248_override.diag.txt │ │ ├── w248_override.nut │ │ ├── w248_relative_pred.diag.txt │ │ ├── w248_relative_pred.nut │ │ ├── w248_special_name_func.diag.txt │ │ ├── w248_special_name_func.nut │ │ ├── w248_terminated_branch1.diag.txt │ │ ├── w248_terminated_branch1.nut │ │ ├── w248_tyopeof1.diag.txt │ │ ├── w248_tyopeof1.nut │ │ ├── w248_tyopeof2.diag.txt │ │ ├── w248_tyopeof2.nut │ │ ├── w248_type_func.diag.txt │ │ ├── w248_type_func.nut │ │ ├── w248_while_cond.diag.txt │ │ ├── w248_while_cond.nut │ │ ├── w250_array.diag.txt │ │ ├── w250_array.nut │ │ ├── w250_container.diag.txt │ │ ├── w250_container.nut │ │ ├── w254.diag.txt │ │ ├── w254.nut │ │ ├── w254_instanceof.diag.txt │ │ ├── w254_instanceof.nut │ │ ├── w254_notin.diag.txt │ │ ├── w254_notin.nut │ │ ├── w255.diag.txt │ │ ├── w255.nut │ │ ├── w255_2.diag.txt │ │ ├── w255_2.nut │ │ ├── w255_foreach_destr_distinct.diag.txt │ │ ├── w255_foreach_destr_distinct.nut │ │ ├── w256.diag.txt │ │ ├── w256.nut │ │ ├── w257.diag.txt │ │ ├── w257.nut │ │ ├── w258.diag.txt │ │ ├── w258.nut │ │ ├── w258_2.diag.txt │ │ ├── w258_2.nut │ │ ├── w259.diag.txt │ │ ├── w259.nut │ │ ├── w260_local_function.diag.txt │ │ ├── w260_local_function.nut │ │ ├── w260_table.diag.txt │ │ ├── w260_table.nut │ │ ├── w260_table_sqconfig.diag.txt │ │ ├── w260_table_sqconfig.nut │ │ ├── w262.diag.txt │ │ ├── w262.nut │ │ ├── w263.diag.txt │ │ ├── w263.nut │ │ ├── w264.diag.txt │ │ ├── w264.nut │ │ ├── w266.diag.txt │ │ ├── w266.nut │ │ ├── w267.diag.txt │ │ ├── w267.nut │ │ ├── w269.diag.txt │ │ ├── w269.nut │ │ ├── w270.diag.txt │ │ ├── w270.nut │ │ ├── w271.diag.txt │ │ ├── w271.nut │ │ ├── w272.diag.txt │ │ ├── w272.nut │ │ ├── w275.diag.txt │ │ ├── w275.nut │ │ ├── w275_all_variants.diag.txt │ │ ├── w275_all_variants.nut │ │ ├── w275_complex.diag.txt │ │ ├── w275_complex.nut │ │ ├── w277.diag.txt │ │ ├── w277.nut │ │ ├── w279_1.diag.txt │ │ ├── w279_1.nut │ │ ├── w279_2.diag.txt │ │ ├── w279_2.nut │ │ ├── w280.diag.txt │ │ ├── w280.nut │ │ ├── w281.diag.txt │ │ ├── w281.nut │ │ ├── w283.diag.txt │ │ ├── w283.nut │ │ ├── w284.diag.txt │ │ ├── w284.nut │ │ ├── w285.diag.txt │ │ ├── w285.nut │ │ ├── w286.diag.txt │ │ ├── w286.nut │ │ ├── w286_2.diag.txt │ │ ├── w286_2.nut │ │ ├── w286_oror_andand.diag.txt │ │ ├── w286_oror_andand.nut │ │ ├── w287.diag.txt │ │ ├── w287.nut │ │ ├── w288.diag.txt │ │ ├── w288.nut │ │ ├── w288_dp_va.diag.txt │ │ ├── w288_dp_va.nut │ │ ├── w288_lambdas2.diag.txt │ │ ├── w288_lambdas2.nut │ │ ├── w288_native.diag.txt │ │ ├── w288_native.nut │ │ ├── w288_require.diag.txt │ │ ├── w288_require.nut │ │ ├── w288_require_indirect.diag.txt │ │ ├── w288_require_indirect.nut │ │ ├── w289.diag.txt │ │ ├── w289.nut │ │ ├── w291.diag.txt │ │ ├── w291.nut │ │ ├── w292.diag.txt │ │ ├── w292.nut │ │ ├── w293.diag.txt │ │ ├── w293.nut │ │ ├── w295.diag.txt │ │ ├── w295.nut │ │ ├── w297.diag.txt │ │ ├── w297.nut │ │ ├── w305.diag.txt │ │ ├── w305.nut │ │ ├── w306.diag.txt │ │ ├── w306.nut │ │ ├── w308.diag.txt │ │ ├── w308.nut │ │ ├── w309_require.diag.txt │ │ ├── w309_require.nut │ │ ├── w310_require.diag.txt │ │ ├── w310_require.nut │ │ ├── w312_require.diag.txt │ │ ├── w312_require.nut │ │ ├── w318_merge_empty_table.diag.txt │ │ ├── w318_merge_empty_table.nut │ │ ├── w319_empty_array_resize.diag.txt │ │ ├── w319_empty_array_resize.nut │ │ ├── w320.diag.txt │ │ ├── w320.nut │ │ ├── w321.diag.txt │ │ ├── w321.nut │ │ ├── w322.diag.txt │ │ └── w322.nut │ └── types/ │ ├── default_values.nut.txt │ ├── default_values.out │ ├── default_values_invalid.nut.txt │ ├── default_values_invalid.out │ ├── invalid.nut.txt │ ├── invalid.out │ ├── type_suggestions.nut.txt │ ├── type_suggestions.out │ ├── valid.nut.txt │ └── valid.out └── testRunner.py