From b49129fb8a47b73bbd400ca33264d992ffd8054c Mon Sep 17 00:00:00 2001 From: Erwan Jahier <erwan.jahier@univ-grenoble-alpes.fr> Date: Thu, 6 Feb 2020 16:12:13 +0100 Subject: [PATCH] Fix: the variables could not be named as Boolean values in Steate printer (e.g., f was forbidden) --- lib/sasacore/sasaState.ml | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/lib/sasacore/sasaState.ml b/lib/sasacore/sasaState.ml index af3582a8..371cde9d 100644 --- a/lib/sasacore/sasaState.ml +++ b/lib/sasacore/sasaState.ml @@ -27,9 +27,19 @@ let (string_to_data : string -> data_or_name) = let (to_list : 'v -> data_or_name list) = fun v -> let str = Register.to_string v in - let lstr = Str.split (Str.regexp "[ \t=]+") str in - let l = List.map string_to_data lstr in - l + let lstr = Str.split (Str.regexp "[ \t]+") str in + let lstr = List.map + (fun str -> + match Str.split (Str.regexp "[=]") str with + | [v] -> [string_to_data v] + | [n;v] -> [Name n; string_to_data v] + | _ -> + let msg = Printf.sprintf "Bad format '%s' for printing state values" str in + failwith msg + ) + lstr + in + List.flatten lstr (* remove var name hints *) let (to_rif_data : 'v -> string) = -- GitLab