diff --git a/src/kernel_internals/parsing/clexer.mll b/src/kernel_internals/parsing/clexer.mll
index bfcb287c5d6dd7ea4bb282a3a355b116952ae304..703e67408c8050d4476f16078733f4bb7d676fdb 100644
--- a/src/kernel_internals/parsing/clexer.mll
+++ b/src/kernel_internals/parsing/clexer.mll
@@ -847,7 +847,7 @@ and might_end_ghost_annot = parse
           make_annot ~one_line:false initial lexbuf s }
   | "" { Buffer.add_char buf !annot_char; annot_token lexbuf }
 and annot_one_line = parse
-  | "ghost" "else" {
+  | "ghost" blank+ "else" {
       if is_oneline_ghost () then E.parse_error "nested ghost code";
       enter_oneline_ghost (); LGHOST_ELSE (currentLoc ())
   }