From 64d647198b5d44c9172a2a7a20f983f9b7178af6 Mon Sep 17 00:00:00 2001 From: ryuukk Date: Thu, 5 Oct 2023 18:58:10 +0200 Subject: [PATCH] Save progress --- dsymbol/src/dsymbol/conversion/first.d | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/dsymbol/src/dsymbol/conversion/first.d b/dsymbol/src/dsymbol/conversion/first.d index 44ea31a..f9294e6 100644 --- a/dsymbol/src/dsymbol/conversion/first.d +++ b/dsymbol/src/dsymbol/conversion/first.d @@ -463,7 +463,8 @@ final class FirstPass : ASTVisitor if (IdentifierOrTemplateInstance iot = ue.identifierOrTemplateInstance) buildChainTemplateOrIdentifier(symbol, lookup, ctx, iot); - if(ue.unaryExpression) traverseUnaryExpression(symbol, lookup, ctx, ue.unaryExpression); + if(ue.unaryExpression) + traverseUnaryExpression(symbol, lookup, ctx, ue.unaryExpression); } override void visit(const VariableDeclaration dec) @@ -580,6 +581,8 @@ final class FirstPass : ASTVisitor foreach_reverse(c; result) lookup.breadcrumbs.insert(c); + again: + // check template if (IdentifierOrTemplateInstance iot = unary.identifierOrTemplateInstance) { @@ -624,6 +627,17 @@ final class FirstPass : ASTVisitor else { writeln("something else final"); + if (unary.unaryExpression) + { + unary = unary.unaryExpression; + goto again; + } + else + { + foreach(c; original) + lookup.breadcrumbs.insert(c); + } + } } }