diff --git a/verifier/src/main/java/org/strata/jverify/verifier/compiler/generator/laurel/JavaToLaurelCompiler.java b/verifier/src/main/java/org/strata/jverify/verifier/compiler/generator/laurel/JavaToLaurelCompiler.java index b2756003..9d439d89 100644 --- a/verifier/src/main/java/org/strata/jverify/verifier/compiler/generator/laurel/JavaToLaurelCompiler.java +++ b/verifier/src/main/java/org/strata/jverify/verifier/compiler/generator/laurel/JavaToLaurelCompiler.java @@ -34,6 +34,27 @@ public class JavaToLaurelCompiler { /// simplification pass; Strata reports diagnostics for them against /// this URI, which has no entry in our line map. private static final String SYNTHETIC_UNKNOWN_PATH = "/"; + /// Suffix for the per-sort uninterpreted null-reference function + /// (`$null`) used to model `x == null` / `x != null` and standalone + /// `null` values on object references (which translate to opaque + /// composite sorts). + /// + ///

STOP-GAP. This per-sort null encoding is a front-end workaround + /// until Laurel gains first-class nullable support. The intended Laurel + /// model is: + ///