From bd83781be3b43520b213c9f30a175aff5396cb32 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lo=C3=AFc=20Correnson?= <loic.correnson@cea.fr>
Date: Tue, 20 Aug 2024 10:54:00 +0200
Subject: [PATCH] [modules] extended operators and quotes

---
 src/kernel_internals/parsing/logic_lexer.mll | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/kernel_internals/parsing/logic_lexer.mll b/src/kernel_internals/parsing/logic_lexer.mll
index 8c5800a882..61e3a74536 100644
--- a/src/kernel_internals/parsing/logic_lexer.mll
+++ b/src/kernel_internals/parsing/logic_lexer.mll
@@ -361,6 +361,8 @@ let rOP = [
 ]
 let comment_line = "//" [^'\n']*
 let rIdentifier = rL (rL | rD)*
+let xIdentifier = rL (rL | rD | "'")*
+let opIdentifier = (rL | rD | rOP)+
 
 (* Do not forget to update also the corresponding chr rule if you add
    a supported escape sequence here. *)
@@ -390,9 +392,8 @@ rule token = parse
      check_ext_plugin (fst cabsloc) plugin tok
      }
   | '\\' rIdentifier { bs_identifier lexbuf }
-  | rIdentifier ( "::" rIdentifier )+                 { longident lexbuf }
-  | rIdentifier ( "::" rIdentifier )+ "'" rIdentifier { longident lexbuf }
-  | rIdentifier ( "::" rIdentifier )* "::(" rOP+ ")"  { longident lexbuf }
+  | ( rIdentifier "::")+     xIdentifier      { longident lexbuf }
+  | ( rIdentifier "::")+ "(" opIdentifier ")" { longident lexbuf }
   | rIdentifier       {
       let loc = Lexing.(lexeme_start_p lexbuf, lexeme_end_p lexbuf) in
       let cabsloc = Cil_datatype.Location.of_lexing_loc loc in
-- 
GitLab