From b0d8dc8b6bf3380c310244fa56a73c96e5c8c46b Mon Sep 17 00:00:00 2001 From: Mario Carneiro Date: Mon, 20 Jan 2025 02:05:02 -0700 Subject: [PATCH] Flex-and aliasing bug --- kernel/ellipses.pas | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/ellipses.pas b/kernel/ellipses.pas index 20d0837..2dd165f 100644 --- a/kernel/ellipses.pas +++ b/kernel/ellipses.pas @@ -625,14 +625,14 @@ function ProcessEllipses(fFrm1,fFrm2:FrmPtr; fConj:boolean):FrmPtr; if fConj then begin - lExpansion:=NewExpansion(lTyp,lLeftGuardFrm,lRightGuardFrm,NewNeg(lFrm1)); + lExpansion:=NewExpansion(lTyp,lLeftGuardFrm^.CopyFormula,lRightGuardFrm^.CopyFormula,NewNeg(lFrm1)); WithinFormula(lExpansion,IncBoundVar); WithinFormula(lExpansion,LociToBoundVar); lResult:=new(FlexFrmPtr,InitD(fFrm1,fFrm2,lExpansion,lLeftGuardTrm,lRightGuardTrm)); end else begin - lExpansion:=NewExpansion(lTyp,lLeftGuardFrm,lRightGuardFrm,lFrm1); + lExpansion:=NewExpansion(lTyp,lLeftGuardFrm^.CopyFormula,lRightGuardFrm^.CopyFormula,lFrm1); WithinFormula(lExpansion,IncBoundVar); WithinFormula(lExpansion,LociToBoundVar); lResult:=NewNeg(new(FlexFrmPtr,InitD(NewNeg(fFrm1),NewNeg(fFrm2),lExpansion,lLeftGuardTrm,lRightGuardTrm)));