Browse Source

Merge pull request #2180 from Fusioon/Fix-#1914

Expect semicolon after expression body property
Brian Fiete 6 months ago
parent
commit
a7e927db82
2 changed files with 5 additions and 0 deletions
  1. 1 0
      IDEHelper/Compiler/BfPrinter.cpp
  2. 4 0
      IDEHelper/Compiler/BfReducer.cpp

+ 1 - 0
IDEHelper/Compiler/BfPrinter.cpp

@@ -2839,6 +2839,7 @@ void BfPrinter::Visit(BfPropertyDeclaration* propertyDeclaration)
 		for (auto method : propertyDeclaration->mMethods)
 		for (auto method : propertyDeclaration->mMethods)
 		{
 		{
 			QueueVisitChild(method->mBody);
 			QueueVisitChild(method->mBody);
+			QueueVisitChild(method->mEndSemicolon);
 		}
 		}
 	}
 	}
 
 

+ 4 - 0
IDEHelper/Compiler/BfReducer.cpp

@@ -7769,6 +7769,10 @@ BfAstNode* BfReducer::ReadTypeMember(BfAstNode* node, bool declStarted, int dept
 					{
 					{
 						MEMBER_SET(method, mBody, expr);
 						MEMBER_SET(method, mBody, expr);
 						propertyDeclaration->SetSrcEnd(expr->GetSrcEnd());
 						propertyDeclaration->SetSrcEnd(expr->GetSrcEnd());
+
+						auto endSemicolon = ExpectTokenAfter(expr, BfToken_Semicolon);
+						if (endSemicolon != NULL)
+							MEMBER_SET(method, mEndSemicolon, endSemicolon);
 					}
 					}
 
 
 					methods.Add(method);
 					methods.Add(method);