From ce528b848d8d27963883f9fe6c2658dc2fe85701 Mon Sep 17 00:00:00 2001 From: Jan Gruteser <jan.gruteser@hhu.de> Date: Fri, 20 Dec 2024 08:59:59 +0100 Subject: [PATCH] =?UTF-8?q?don=E2=80=99t=20ignore=20MC=20definitions=20if?= =?UTF-8?q?=20they=20are=20used?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fixes public_examples/TLA/book-specs/AddSeq.toolbox/AddSeq_implements_Add/MC.tla --- src/main/java/de/tla2bAst/BAstCreator.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/de/tla2bAst/BAstCreator.java b/src/main/java/de/tla2bAst/BAstCreator.java index 95a92df..50ac77d 100644 --- a/src/main/java/de/tla2bAst/BAstCreator.java +++ b/src/main/java/de/tla2bAst/BAstCreator.java @@ -186,7 +186,11 @@ public class BAstCreator extends BuiltInOPs DebugUtils.printVeryVerboseMsg("Not creating B DEFINITION (in Override Table) " + def.getName() + " " + def); continue; } - if (def.getOriginallyDefinedInModuleNode().getName().toString().equals("MC")) { + if (def.getOriginallyDefinedInModuleNode().getName().toString().equals("MC") + && !specAnalyser.getUsedDefinitions().contains(def)) { + // don't skip MC definitions if they are used + // TODO: check if this is correct (see invariant check for MC below) + DebugUtils.printDebugMsg("Skipping MC definition: " + def.getName()); continue; } //debugUtils.printVeryVerboseMsg("Creating B DEFINITION " + def.getName() + " " + def); -- GitLab