|
@@ -4437,6 +4437,7 @@ void GDScriptAnalyzer::reduce_identifier(GDScriptParser::IdentifierNode *p_ident
|
|
|
case GDScriptParser::IdentifierNode::UNDEFINED_SOURCE:
|
|
|
case GDScriptParser::IdentifierNode::MEMBER_FUNCTION:
|
|
|
case GDScriptParser::IdentifierNode::MEMBER_CLASS:
|
|
|
+ case GDScriptParser::IdentifierNode::NATIVE_CLASS:
|
|
|
break;
|
|
|
}
|
|
|
|
|
@@ -4507,6 +4508,7 @@ void GDScriptAnalyzer::reduce_identifier(GDScriptParser::IdentifierNode *p_ident
|
|
|
case GDScriptParser::IdentifierNode::MEMBER_CLASS:
|
|
|
case GDScriptParser::IdentifierNode::INHERITED_VARIABLE:
|
|
|
case GDScriptParser::IdentifierNode::STATIC_VARIABLE:
|
|
|
+ case GDScriptParser::IdentifierNode::NATIVE_CLASS:
|
|
|
return; // No need to capture.
|
|
|
}
|
|
|
|
|
@@ -4539,6 +4541,7 @@ void GDScriptAnalyzer::reduce_identifier(GDScriptParser::IdentifierNode *p_ident
|
|
|
}
|
|
|
|
|
|
if (class_exists(name)) {
|
|
|
+ p_identifier->source = GDScriptParser::IdentifierNode::NATIVE_CLASS;
|
|
|
p_identifier->set_datatype(make_native_meta_type(name));
|
|
|
return;
|
|
|
}
|
|
@@ -5990,7 +5993,7 @@ void GDScriptAnalyzer::is_shadowing(GDScriptParser::IdentifierNode *p_identifier
|
|
|
if (Variant::has_utility_function(name)) {
|
|
|
parser->push_warning(p_identifier, GDScriptWarning::SHADOWED_GLOBAL_IDENTIFIER, p_context, name, "built-in function");
|
|
|
return;
|
|
|
- } else if (ClassDB::class_exists(name)) {
|
|
|
+ } else if (class_exists(name)) {
|
|
|
parser->push_warning(p_identifier, GDScriptWarning::SHADOWED_GLOBAL_IDENTIFIER, p_context, name, "native class");
|
|
|
return;
|
|
|
} else if (ScriptServer::is_global_class(name)) {
|