diff --git a/src/kernel_internals/parsing/cparser.mly b/src/kernel_internals/parsing/cparser.mly
index a023f02eea1f8f38c1b441d860f4e07316d39d0e..f47a10fb825cddec9b19a35b602a7b2f9dedc1c3 100644
--- a/src/kernel_internals/parsing/cparser.mly
+++ b/src/kernel_internals/parsing/cparser.mly
@@ -1086,7 +1086,7 @@ declaration:                                /* ISO 6.7.*/
         end;
         !Lexerhack.reset_typedef();
         doDeclaration (Some $1) ((snd $2)) (fst $2) [] }
-|   static_assert_declaration
+|   static_assert_declaration SEMICOLON
       { let (e, m, loc) = $1 in STATIC_ASSERT (e, m, loc) }
 ;