diff --git a/IDEHelper/Compiler/BfPrinter.cpp b/IDEHelper/Compiler/BfPrinter.cpp index fd82179f..105cde42 100644 --- a/IDEHelper/Compiler/BfPrinter.cpp +++ b/IDEHelper/Compiler/BfPrinter.cpp @@ -1307,6 +1307,15 @@ void BfPrinter::Visit(BfTokenPairNode* tokenPairNode) VisitChild(tokenPairNode->mRight); } +void BfPrinter::Visit(BfUsingSpecifierNode* usingSpecifier) +{ + Visit(usingSpecifier->ToBase()); + + VisitChild(usingSpecifier->mProtection); + ExpectSpace(); + VisitChild(usingSpecifier->mUsingToken); +} + void BfPrinter::Visit(BfLiteralExpression* literalExpr) { Visit(literalExpr->ToBase()); diff --git a/IDEHelper/Compiler/BfPrinter.h b/IDEHelper/Compiler/BfPrinter.h index 31122775..d461514b 100644 --- a/IDEHelper/Compiler/BfPrinter.h +++ b/IDEHelper/Compiler/BfPrinter.h @@ -146,6 +146,7 @@ public: virtual void Visit(BfEmptyStatement* emptyStmt) override; virtual void Visit(BfTokenNode* tokenNode) override; virtual void Visit(BfTokenPairNode* tokenPairNode) override; + virtual void Visit(BfUsingSpecifierNode* usingSpecifier) override; virtual void Visit(BfLiteralExpression* literalExpr) override; virtual void Visit(BfStringInterpolationExpression* stringInterpolationExpression) override; virtual void Visit(BfIdentifierNode* identifierNode) override; diff --git a/IDEHelper/Compiler/BfReducer.cpp b/IDEHelper/Compiler/BfReducer.cpp index b6e85698..c94942c3 100644 --- a/IDEHelper/Compiler/BfReducer.cpp +++ b/IDEHelper/Compiler/BfReducer.cpp @@ -6438,6 +6438,7 @@ BfAstNode* BfReducer::ReadTypeMember(BfTokenNode* tokenNode, bool declStarted, i if (auto usingSpecifier = BfNodeDynCastExact(fieldDecl->mConstSpecifier)) { SetProtection(memberDecl, usingSpecifier->mProtection, tokenNode); + usingSpecifier->mTriviaStart = tokenNode->mTriviaStart; return memberDecl; } }