Asar User Manual - Error list

Error name | Error message
--- | ---
Elimit_reached | Over %d errors detected. Aborting.
Ewerror | One or more warnings was detected with werror on.
E16mb_rom_limit | Can't create ROMs larger than 16MB.
Ebuffer_too_small | The given buffer is too small to contain the resulting ROM.
Eparams_null | params passed to asar_patch_ex() is null.
Eparams_invalid_size | Size of params passed to asar_patch_ex() is invalid.
Ecmdl_define_invalid | Invalid define name in %s: '%s'.
Ecmdl_define_override | %s '%s' overrides a previous define. Did you specify the same define twice?
Ecreate_rom_failed | Couldn't create ROM.
Eopen_rom_failed | Couldn't open ROM.
Eopen_rom_not_smw_extension | Doesn't look like an SMW ROM. (Maybe its extension is wrong?)
Eopen_rom_not_smw_header | Doesn't look like an SMW ROM. (Maybe it's headered?)
Estddefines_no_identifier | stddefines.txt contains a line with a value, but no identifier.
Estddefine_after_closing_quote | Broken std defines. (Something after closing quote)
Efailed_to_open_file | Failed to open file '%s'.
Efile_not_found | File '%s' wasn't found.
Ereadfile_1_to_4_bytes | Can only read chunks of 1 to 4 bytes.
Ecanreadfile_0_bytes | Number of bytes to check must be > 0.
Efile_offset_out_of_bounds | File offset %s out of bounds for file '%s'.
Erep_at_file_end | rep at the end of a file
Emismatched_parentheses | Mismatched parentheses.
Einvalid_hex_value | Invalid hex value.
Einvalid_binary_value | Invalid binary value.
Einvalid_character | Invalid character.
Estring_literal_not_terminated | String literal not terminated.
Emalformed_function_call | Malformed function call.
Einvalid_number | Invalid number.
Egarbage_near_quoted_string | Garbage near quoted string.
Emismatched_quotes | Mismatched quotes.
Erom_too_short | ROM is too short to have a title. (Expected '%s')
Erom_title_incorrect | ROM title is incorrect. Expected '%s', got '%s'.
Ebank_border_crossed | A bank border was crossed, SNES address $%06X.
Estart_of_file | This command may only be used at the start of a file.
Exkas_asar_conflict | Using @xkas and @asar in the same patch is not supported.
Einvalid_version_number | Invalid version number.
Easar_too_old | This version of Asar is too old for this patch.
Erelative_branch_out_of_bounds | Relative branch out of bounds. (Distance is %s).
Esnes_address_doesnt_map_to_rom | SNES address %s doesn't map to ROM.
Esnes_address_out_of_bounds | SNES address %s out of bounds.
Einvalid_tcall | Invalid tcall.
Euse_xplus | Use (x+) instead.
Eopcode_length_too_long | Opcode length is too long.
Esuperfx_invalid_short_address | Invalid short address parameter: $%s. (Must be even number and $0000-$01FE)
Esuperfx_invalid_register | Invalid register for opcode; valid range is %d-%d.
Einvalid_opcode_length | Invalid opcode length specification.
Einvalid_mapper | Invalid mapper.
Enan | NaN encountered.
Edivision_by_zero | Division by zero.
Emodulo_by_zero | Modulo by zero.
Eunknown_operator | Unknown operator.
Einvalid_input | Invalid input.
Einvalid_function_name | Invalid function name.
Efunction_not_found | Function '%s' wasn't found.
Efunction_redefined | Function '%s' redefined.
Ebroken_function_declaration | Broken function declaration.
Ewrong_num_parameters | Wrong number of parameters to function.
Einvalid_param_name | Invalid parameter name.
Emath_invalid_type | Wrong type for parameter %s, expected %s.
Einvalid_label_name | Invalid label name.
Elabel_not_found | Label '%s' wasn't found.
Elabel_redefined | Label '%s' redefined.
Ebroken_label_definition | Broken label definition.
Elabel_cross_assignment | Setting labels to other non-static labels is not valid.
Emacro_label_outside_of_macro | Macro label outside of a macro.
Elabel_on_third_pass | Internal error: A label was created on the third pass. Please create an issue on the official GitHub repository and attach a patch which reproduces the error.
Elabel_moving | Internal error: A label is moving around. Please create an issue on the official GitHub repository and attach a patch which reproduces the error.
Einvalid_namespace_name | Invalid namespace name.
Einvalid_namespace_use | Invalid use of namespace command.
Einvalid_struct_name | Invalid struct name.
Estruct_not_found | Struct '%s' wasn't found.
Estruct_redefined | Struct '%s' redefined.
Estruct_invalid_parent_name | Invalid parent name.
Einvalid_label_missing_closer | Invalid label name, missing array closer.
Emultiple_subscript_operators | Multiple subscript operators is invalid.
Einvalid_subscript | Invalid array subscript after first scope resolution.
Elabel_missing_parent | This label has no parent.
Earray_invalid_inside_structs | Array syntax invalid inside structs.
Estruct_without_endstruct | struct without matching endstruct.
Enested_struct | Can not nest structs.
Emissing_struct_params | Missing struct parameters.
Etoo_many_struct_params | Too many struct parameters.
Emissing_extends | Missing extends keyword.
Einvalid_endstruct_count | Invalid endstruct parameter count.
Eexpected_align | Expected align parameter.
Eendstruct_without_struct | endstruct can only be used in combination with struct.
Ealignment_too_small | Alignment must be >= 1.
Einvalid_define_name | Invalid define name.
Edefine_not_found | Define '%s' wasn't found.
Ebroken_define_declaration | Broken define declaration.
Eoverriding_builtin_define | Trying to set define '%s', which is the name of a built-in define and thus can't be modified.
Edefine_label_math | !Define #= Label is not allowed with non-static labels.
Emismatched_braces | Mismatched braces.
Einvalid_macro_name | Invalid macro name.
Emacro_not_found | Macro '%s' wasn't found.
Emacro_redefined | Macro '%s' redefined.
Ebroken_macro_declaration | Broken macro declaration.
Einvalid_macro_param_name | Invalid macro parameter name.
Emacro_param_not_found | Macro parameter '%s' wasn't found.
Emacro_param_redefined | Macro parameter '%s' redefined
Ebroken_macro_usage | Broken macro usage.
Emacro_wrong_num_params | Wrong number of parameters to macro.
Ebroken_macro_contents | Broken macro contents.
Erep_at_macro_end | rep or if at the end of a macro.
Enested_macro_definition | Nested macro definition.
Emisplaced_endmacro | Misplaced endmacro.
Eunclosed_macro | Unclosed macro.
Elabel_in_conditional | Non-static label in %s command.
Ebroken_conditional | Broken %s command.
Einvalid_condition | Invalid condition.
Emisplaced_elseif | Misplaced elseif.
Eelseif_in_while | Can't use elseif in a while loop.
Eelseif_in_singleline | Can't use elseif on single-line statements.
Emisplaced_endif | Misplaced endif.
Emisplaced_else | Misplaced else.
Eelse_in_while_loop | Can't use else in a while loop.
Eunclosed_if | Unclosed if statement.
Eunknown_command | Unknown command.
Ecommand_disabled | This command is disabled.
Ebroken_incbin | Broken incbin command.
Eincbin_64kb_limit | Can't include more than 64 kilobytes at once.
Erecursion_limit | Recursion limit reached.
Ecommand_in_non_root_file | This command may only be used in the root file.
Ecant_be_main_file | This file may not be used as the main file.%s
Eno_labels_here | Can't use non-static labels here.
Einvalid_freespace_request | Invalid freespace request.
Eno_banks_with_ram_mirrors | No banks contain the RAM mirrors in hirom or exhirom.
Eno_freespace_norom | Can't find freespace in norom.
Estatic_freespace_autoclean | A static freespace must be targeted by at least one autoclean.
Estatic_freespace_growing | A static freespace may not grow.
Eno_freespace_in_mapped_banks | No freespace found in the mapped banks. (Requested size: %s)
Eno_freespace | No freespace found. (Requested size: %s)
Efreespace_limit_reached | A patch may not contain more than %d freespaces.
Eprot_not_at_freespace_start | PROT must be used at the start of a freespace block.
Eprot_too_many_entries | Too many entries to PROT.
Eautoclean_in_freespace | autoclean used in freespace.
Eautoclean_label_at_freespace_end | Don't autoclean a label at the end of a freespace block, you'll remove some stuff you're not supposed to remove.
Ebroken_autoclean | Broken autoclean command.
Epulltable_without_table | Using pulltable when there is no table on the stack yet.
Einvalid_table_file | Invalid table file. Invalid entry on line: %i
Epad_in_freespace | pad does not make sense in a freespaced code.
Eorg_label_invalid | org Label is not valid.
Eorg_label_forward | org Label is only valid for labels earlier in the patch.
Eskip_label_invalid | skip Label is not valid.
Espc700_inline_no_base | base is not implemented for architecture spc700-inline.
Ebase_label_invalid | base Label is not valid.
Erep_label | rep Label is not valid.
Epushpc_without_pullpc | pushpc without matching pullpc.
Epullpc_without_pushpc | pullpc without matching pushpc.
Epullpc_different_arch | pullpc in another architecture than the pushpc.
Epullbase_without_pushbase | pullbase without matching pushbase.
Einvalid_math | Invalid math command.
Einvalid_warn | Invalid warn command.
Einvalid_check | Invalid check command.
Ewarnpc_in_freespace | warnpc used in freespace.
Ewarnpc_broken_param | Broken warnpc parameter.
Ewarnpc_failed | warnpc failed: Current position (%s) is after end position (%s).
Ewarnpc_failed_equal | warnpc failed: Current position (%s) is equal to end position (%s).
Eassertion_failed | Assertion failed%s
Eerror_command | error command%s
Einvalid_print_function_syntax | Invalid printable string syntax.
Eunknown_variable | Unknown variable.
Einvalid_warning_id | Invalid warning ID passed to %s. Expected format is WXXXX where %d <= XXXX <= %d.
Epushwarnings_without_pullwarnings | warnings push without matching warnings pull.
Epullwarnings_without_pushwarnings | warnings pull without matching warnings push.
Efailed_to_open_file_access_denied | Failed to open file '%s'. Access denied.
Efailed_to_open_not_regular_file | Failed to open file '%s'. Not a regular file (did you try to use a directory?)
Ebad_dp_base | The dp base should be page aligned (i.e. a multiple of 256)
Ebad_dp_optimize | Bad dp optimize value %s, expected: [none, ram, always]
Ebad_address_optimize | Bad dp optimize value %s, expected: [default, ram, mirrors]
Ebad_optimize | Bad optimize value %s, expected: [dp, address]
Erequire_parameter | Missing required function parameter
Eexpected_parameter | Not enough parameters in calling of function %s
Eunexpected_parameter | Too many parameters in calling of function %s
Eduplicate_param_name | Duplicated parameter name: %s in creation of function %s
Einvalid_alignment | Invalid alignment. Expected a power of 2.
Ealignment_too_big | Requested alignment too large.
Enegative_shift | Bitshift amount is negative.
Emacro_not_varadic | Invalid use of sizeof(...), active macro is not variadic.
Evararg_sizeof_nomacro | Invalid use of sizeof(...), no active macro.
Emacro_wrong_min_params | Variadic macro call with too few parameters
Evararg_out_of_bounds | Variadic macro parameter requested is out of bounds.
Evararg_must_be_last | Variadic macro parameter must be the last parameter.
Einvalid_global_label | Global label definition contains an invalid label [%s].
Espc700_addr_out_of_range | Address %s out of range for instruction, valid range is 0000-1FFF
Elabel_ambiguous | Label (%s) location is ambiguous due to straddling optimization border.
Efeature_unavaliable_in_spcblock | This feature may not be used while an spcblock is active
Eendspcblock_without_spcblock | Use of endspcblock without matching spcblock
Emissing_endspcblock | Use of endspcblock without matching spcblock
Espcblock_bad_arch | spcblock only valid inside spc700 arch
Espcblock_inside_struct | Can not start an spcblock while a struct is still open
Espcblock_too_few_args | Too few args passed to spcblock
Espcblock_too_many_args | Too many args passed to spcblock
Eunknown_spcblock_type | Unknown spcblock format
Ecustom_spcblock_missing_macro | Custom spcblock types must refer to a valid macro
Espcblock_macro_doesnt_exist | Macro specified to custom spcblock was not found
Eextra_spcblock_arg_for_type | Only custom spcblock type takes a fourth argument
Espcblock_macro_must_be_varadic | Custom spcblock macros must be variadic
Espcblock_macro_invalid_static_args | Custom spcblock macros must have three static arguments
Espcblock_custom_types_incomplete | Custom spcblock types are not yet supported. One day.
Estartpos_without_spcblock | The startpos command is only valid in spcblocks
Einvalid_endspcblock_arg | Invalid argument to endspcblock: "%s"
Eunknown_endspcblock_format | Unsupported endspcblock format. Currently supported formats are "endspcblock" and "endspcblock execute [label]"
Einternal_error | An internal asar error occured (%s). Send help.
Epushns_without_pullns | pushns without matching pullns.
Epullns_without_pushns | pullns without matching pushns.
Elabel_forward | The use of forward labels is not allowed in this context.
Eunclosed_vararg | Variadic macro parameter wasn't closed properly.
Einvalid_vararg | Trying to use variadic macro parameter syntax to resolve a non variadic argument.
Emacro_param_outside_macro | Reference to macro parameter outside of macro
Ebroken_for_loop | Broken for loop declaration.
Ebad_single_line_for | Single-line for loop not allowed here.