X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scl.compiler%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fcompiler%2Felaboration%2Fexpressions%2FEBind.java;fp=bundles%2Forg.simantics.scl.compiler%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fcompiler%2Felaboration%2Fexpressions%2FEBind.java;h=af31cf9c200c5286f8c0737991807c5dfa0344d3;hp=84cc220c1a0222e75def8781fe657eaff1a88aa3;hb=1cb8ccadc93ab1a1ac5981ea6634b3ef5dd27ec4;hpb=69f1fc8b5e6d38a07620fca440a5663b24e75e52 diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/EBind.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/EBind.java index 84cc220c1..af31cf9c2 100644 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/EBind.java +++ b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/EBind.java @@ -79,8 +79,10 @@ public class EBind extends SimplifiableExpression { if(edo) context.pushEffectUpperBound(location, blockType == BlockType.Monad ? Types.NO_EFFECTS : Types.metaVar(Kinds.EFFECT)); in = in.checkType(context, requiredType); - if(edo) + if(edo) { effect = context.popEffectUpperBound(); + context.declareEffect(location, effect); + } else effect = Types.NO_EFFECTS; Type inType = in.getType();