1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-08 11:38:21 +02:00

Fix for 'using static' namespace search inside namespace declarations

This commit is contained in:
Brian Fiete 2022-01-07 08:58:19 -05:00
parent 723f17f139
commit f0bafae177
8 changed files with 53 additions and 11 deletions

View file

@ -3808,16 +3808,20 @@ void BfCompiler::VisitSourceExteriorNodes()
return;
bool failed = false;
for (auto node : parser->mParserData->mExteriorNodes)
{
if (auto usingDirective = BfNodeDynCast<BfUsingDirective>(node))
for (auto& node : parser->mParserData->mExteriorNodes)
{
SetAndRestoreValue<BfSizedArray<BfNamespaceDeclaration*>*> prevCurNamespaceNodes(mContext->mCurNamespaceNodes, &node.mNamespaceNodes);
auto exteriorAstNode = node.mNode;
if (auto usingDirective = BfNodeDynCast<BfUsingDirective>(exteriorAstNode))
{
srcNodes.Clear();
namespaceParts.Clear();
bool success = _AddName(usingDirective->mNamespace, true);
_CheckNamespace(parser, true, failed);
}
else if (auto usingDirective = BfNodeDynCast<BfUsingModDirective>(node))
else if (auto usingDirective = BfNodeDynCast<BfUsingModDirective>(exteriorAstNode))
{
if (usingDirective->mTypeRef != NULL)
{