GDScript: Fix broken export group annotations

This commit is contained in:
Danil Alexeev 2023-01-27 16:25:15 +03:00
parent 518b9e5801
commit 1d68ce2cce
No known key found for this signature in database
GPG key ID: 124453E157DA8DC7
2 changed files with 12 additions and 4 deletions

View file

@ -1062,7 +1062,7 @@ void GDScriptAnalyzer::resolve_class_body(GDScriptParser::ClassNode *p_class, co
resolve_class_body(base_class, p_class);
}
// Do functions and properties now.
// Do functions, properties, and groups now.
for (int i = 0; i < p_class->members.size(); i++) {
GDScriptParser::ClassNode::Member member = p_class->members[i];
if (member.type == GDScriptParser::ClassNode::Member::FUNCTION) {
@ -1102,6 +1102,10 @@ void GDScriptAnalyzer::resolve_class_body(GDScriptParser::ClassNode *p_class, co
resolve_function_body(member.variable->setter);
}
}
} else if (member.type == GDScriptParser::ClassNode::Member::GROUP) {
// Apply annotation (`@export_{category,group,subgroup}`).
resolve_annotation(member.annotation);
member.annotation->apply(parser, nullptr);
}
}