Warning Reference

Every gateable GDScript warning the analyzer can emit, with its project.godot setting key, engine-default level, and the earliest Godot version it applies to. Configure these under [debug] as gdscript/warnings/<key> (0 = ignore, 1 = warn, 2 = error), or suppress inline with @warning_ignore("<key>"). See Configuration.

CodeSetting keyDefaultSinceDescription
ASSERT_ALWAYS_FALSEassert_always_falseWarn4.3An assert(...) condition is always false.
ASSERT_ALWAYS_TRUEassert_always_trueWarn4.3An assert(...) condition is always true.
CONFUSABLE_CAPTURE_REASSIGNMENTconfusable_capture_reassignmentWarn4.3A captured variable is reassigned inside a lambda.
CONFUSABLE_IDENTIFIERconfusable_identifierWarn4.3An identifier mixes scripts / uses confusable characters.
CONFUSABLE_LOCAL_DECLARATIONconfusable_local_declarationWarn4.3A local is declared after a same-name outer use.
CONFUSABLE_LOCAL_USAGEconfusable_local_usageWarn4.3A local shadowing a member is used before its declaration.
CONFUSABLE_TEMPORARY_MODIFICATIONconfusable_temporary_modificationWarnmasterA temporary value is modified in place.
CONSTANT_USED_AS_FUNCTIONconstant_used_as_functionWarn4.3A constant is called as if it were a function.
DEPRECATED_KEYWORDdeprecated_keywordWarn4.3A deprecated keyword (e.g. yield) is used.
EMPTY_FILEempty_fileWarn4.3The script file has no members, class_name, or extends.
ENUM_VARIABLE_WITHOUT_DEFAULTenum_variable_without_defaultWarn4.3An enum-typed variable has no explicit default value.
FUNCTION_USED_AS_PROPERTYfunction_used_as_propertyWarn4.3A function is accessed as if it were a property.
GET_NODE_DEFAULT_WITHOUT_ONREADYget_node_default_without_onreadyError4.3A get_node(...) default initializer should be @onready.
INCOMPATIBLE_TERNARYincompatible_ternaryWarn4.3The two values of a ternary conditional have no common type.
INFERENCE_ON_VARIANTinference_on_variantError4.3A type is inferred from a statically-Variant value.
INFERRED_DECLARATIONinferred_declarationIgnore4.3A declaration uses an inferred type (:=).
INTEGER_DIVISIONinteger_divisionWarn4.3Integer division discards the fractional part.
INT_AS_ENUM_WITHOUT_CASTint_as_enum_without_castWarn4.3An integer is assigned to an enum value without a cast.
INT_AS_ENUM_WITHOUT_MATCHint_as_enum_without_matchWarn4.3An integer is compared to an enum value in a match.
MISSING_AWAITmissing_awaitIgnoremasterAn awaitable call's result is not awaited.
MISSING_TOOLmissing_toolWarn4.3A class extends a @tool class but is not itself @tool.
NARROWING_CONVERSIONnarrowing_conversionWarn4.3A float is stored into an int, losing precision.
NATIVE_METHOD_OVERRIDEnative_method_overrideError4.3A native virtual method is overridden with an incompatible signature.
ONREADY_WITH_EXPORTonready_with_exportError4.3@onready and @export are used together on one member.
PROPERTY_USED_AS_FUNCTIONproperty_used_as_functionWarn4.3A property is called as if it were a function.
REDUNDANT_AWAITredundant_awaitWarn4.3await is applied to a non-coroutine, non-signal value.
REDUNDANT_STATIC_UNLOADredundant_static_unloadWarn4.3@static_unload is used on a class with no static variables.
RETURN_VALUE_DISCARDEDreturn_value_discardedIgnore4.3A non-void call's return value is discarded.
SHADOWED_GLOBAL_IDENTIFIERshadowed_global_identifierWarn4.3A class_name, member, or local shadows a global identifier.
SHADOWED_VARIABLEshadowed_variableWarn4.3A local shadows an outer local or parameter.
SHADOWED_VARIABLE_BASE_CLASSshadowed_variable_base_classWarn4.3A member shadows a member of a base class.
STANDALONE_EXPRESSIONstandalone_expressionWarn4.3An expression statement has no effect.
STANDALONE_TERNARYstandalone_ternaryWarn4.3A ternary conditional is used as a statement; its value is discarded.
STATIC_CALLED_ON_INSTANCEstatic_called_on_instanceWarn4.3A static method is called through an instance.
TOO_FEW_ARGUMENTStoo_few_argumentsError4.3A call passes fewer arguments than the callee's required parameters (a compile error in Godot). Only statically-resolved signatures are checked.
TOO_MANY_ARGUMENTStoo_many_argumentsError4.3A call passes more arguments than the callee accepts (a compile error in Godot). Variadic callees are never flagged.
UNASSIGNED_VARIABLEunassigned_variableWarn4.3An untyped or enum-typed local is read before it is assigned a value (a typed local is zero-initialized).
UNASSIGNED_VARIABLE_OP_ASSIGNunassigned_variable_op_assignWarn4.3A compound assignment (+=, …) is applied to a still-unassigned local.
UNDEFINED_FUNCTIONundefined_functionError4.3A called function is not defined anywhere in the loaded project (a compile error in Godot). Analyzer-specific code; fires only when the loader declared the workspace complete.
UNDEFINED_IDENTIFIERundefined_identifierError4.3An identifier is not declared anywhere in the loaded project (a compile error in Godot). Analyzer-specific code; fires only when the loader declared the workspace complete.
UNDEFINED_METHODundefined_methodError4.3A method called on a built-in type does not exist on it (a compile error in Godot; the bundled built-in tables are closed, so no completeness claim is needed).
UNDEFINED_PROPERTYundefined_propertyError4.3A property accessed on a built-in type does not exist on it (a compile error in Godot; the bundled built-in tables are closed, so no completeness claim is needed).
UNREACHABLE_CODEunreachable_codeWarn4.3A statement follows an unconditional return/break/continue (or an exhaustive match).
UNREACHABLE_PATTERNunreachable_patternWarn4.3A match pattern can never match (it follows a wildcard).
UNSAFE_CALL_ARGUMENTunsafe_call_argumentIgnore4.3An argument needs an unsafe implicit cast into the parameter type.
UNSAFE_CASTunsafe_castIgnore4.3A value is cast through Variant, which is unsafe.
UNSAFE_METHOD_ACCESSunsafe_method_accessIgnore4.3A method is not present on the inferred type (but may be on a subtype).
UNSAFE_PROPERTY_ACCESSunsafe_property_accessIgnore4.3A property is not present on the inferred type (but may be on a subtype).
UNSAFE_VOID_RETURNunsafe_void_returnWarn4.3A Variant value is returned from a -> void function.
UNTYPED_DECLARATIONuntyped_declarationIgnore4.3A declaration has no type annotation.
UNUSED_LOCAL_CONSTANTunused_local_constantWarn4.3A local constant is declared but never read.
UNUSED_PARAMETERunused_parameterWarn4.3A function parameter is never used (prefix it with _).
UNUSED_PRIVATE_CLASS_VARIABLEunused_private_class_variableWarn4.3A _-prefixed class member is never read within the class.
UNUSED_SIGNALunused_signalWarn4.3A signal is never emitted or connected in the file.
UNUSED_VARIABLEunused_variableWarn4.3A local variable is declared but never read.