diff --git a/IDEHelper/Compiler/BfReducer.cpp b/IDEHelper/Compiler/BfReducer.cpp index 29d5d8be..8bcc9878 100644 --- a/IDEHelper/Compiler/BfReducer.cpp +++ b/IDEHelper/Compiler/BfReducer.cpp @@ -9887,6 +9887,10 @@ bool BfReducer::ParseMethod(BfMethodDeclaration* methodDeclaration, SizedArrayIm MoveNode(methodDeclaration->mCloseParen, methodDeclaration); mVisitorPos.MoveNext(); + auto ctorDecl = BfNodeDynCast(methodDeclaration); + if (auto autoCtorDecl = BfNodeDynCast(ctorDecl)) + return true; + auto typeDecl = mCurTypeDecl; nextNode = mVisitorPos.GetNext(); if ((tokenNode = BfNodeDynCast(nextNode))) @@ -9914,8 +9918,6 @@ bool BfReducer::ParseMethod(BfMethodDeclaration* methodDeclaration, SizedArrayIm } } - auto ctorDecl = BfNodeDynCast(methodDeclaration); - nextNode = mVisitorPos.GetNext(); auto endToken = BfNodeDynCast(nextNode); if ((endToken != NULL) && (endToken->GetToken() == BfToken_Colon)) @@ -9974,9 +9976,6 @@ bool BfReducer::ParseMethod(BfMethodDeclaration* methodDeclaration, SizedArrayIm endToken = NULL; } - if (auto autoCtorDecl = BfNodeDynCast(ctorDecl)) - return true; - if ((endToken != NULL) && (endToken->GetToken() == BfToken_Semicolon)) { MEMBER_SET_CHECKED_BOOL(methodDeclaration, mEndSemicolon, endToken);