diff --git a/servers/rendering/shader_language.cpp b/servers/rendering/shader_language.cpp index 17f599d0fa..68a0f78c0b 100644 --- a/servers/rendering/shader_language.cpp +++ b/servers/rendering/shader_language.cpp @@ -8532,7 +8532,11 @@ Error ShaderLanguage::_parse_block(BlockNode *p_block, const FunctionInfo &p_fun DataType data_type; bool is_const; - _find_identifier(p_block, false, p_function_info, tk.text, &data_type, nullptr, &is_const); + bool found = _find_identifier(p_block, false, p_function_info, tk.text, &data_type, nullptr, &is_const); + if (!found) { + _set_error(vformat(RTR("Undefined identifier '%s' in a case label."), String(tk.text))); + return ERR_PARSE_ERROR; + } if (is_const && data_type == p_block->expected_type) { correct_constant_expression = true; }