Commit 0d91747502
Changed files (2)
src
test
src/parsec.cpp
@@ -1811,7 +1811,8 @@ static AstNode *trans_stmt(Context *c, bool result_used, AstNode *block, Stmt *s
return trans_if_statement(c, block, (IfStmt *)stmt);
case Stmt::CallExprClass:
return trans_call_expr(c, result_used, block, (CallExpr *)stmt);
-
+ case Stmt::NullStmtClass:
+ return skip_add_to_block_node;
case Stmt::MemberExprClass:
return trans_member_expr(c, block, (MemberExpr *)stmt);
case Stmt::CaseStmtClass:
@@ -2181,9 +2182,6 @@ static AstNode *trans_stmt(Context *c, bool result_used, AstNode *block, Stmt *s
case Stmt::MSDependentExistsStmtClass:
emit_warning(c, stmt->getLocStart(), "TODO handle C MSDependentExistsStmtClass");
return nullptr;
- case Stmt::NullStmtClass:
- emit_warning(c, stmt->getLocStart(), "TODO handle C NullStmtClass");
- return nullptr;
case Stmt::OMPAtomicDirectiveClass:
emit_warning(c, stmt->getLocStart(), "TODO handle C OMPAtomicDirectiveClass");
return nullptr;
test/parsec.zig
@@ -460,4 +460,12 @@ pub fn addCases(cases: &tests.ParseCContext) {
\\ return (??foo).field;
\\}
);
+
+ cases.add("null statements",
+ \\void foo(void) {
+ \\ ;;;;;
+ \\}
+ ,
+ \\export fn foo() {}
+ );
}