Skip to content

Commit d3f7886

Browse files
committed
fix: formatting of FactArg MINVECTOR w.r.t OldFactArg
1 parent 6313ee3 commit d3f7886

2 files changed

Lines changed: 36 additions & 3 deletions

File tree

check/fixes.frm

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3794,6 +3794,33 @@ assert stdout =~ exact_pattern(<<'EOF')
37943794
{}: -10 -20 30
37953795
EOF
37963796
*--#] Issue599 :
3797+
*--#[ Issue633 :
3798+
s x,y,z;
3799+
c f;
3800+
v p;
3801+
g ff1 = f(5*x) + f(-5*x) + f(-x) + f(x);
3802+
g ff2 = f(5*p) + f(-5*p) + f(-p) + f(p);
3803+
factarg f;
3804+
print;
3805+
.end
3806+
assert succeeded?
3807+
assert result("ff1") =~ expr("f(x) + f(-5,x) + f(-1,x) + f(5,x)")
3808+
assert result("ff2") =~ expr("f(p) + f(-5,p) + f(-1,p) + f(5,p)")
3809+
*--#] Issue633 :
3810+
*--#[ Issue633_2 :
3811+
on oldfactarg;
3812+
s x,y,z;
3813+
c f;
3814+
v p;
3815+
g ff1 = f(5*x) + f(-5*x) + f(-x) + f(x);
3816+
g ff2 = f(5*p) + f(-5*p) + f(-p) + f(p);
3817+
factarg f;
3818+
print;
3819+
.end
3820+
assert succeeded?
3821+
assert result("ff1") =~ expr("f(x) + f(x,-1,1) + f(x,-1,5) + f(x,5)")
3822+
assert result("ff2") =~ expr("f(p) + f(p,-1,1) + f(p,-1,5) + f(p,5)")
3823+
*--#] Issue633_2 :
37973824
*--#[ Issue642 :
37983825
#-
37993826
Off statistics;

sources/argument.c

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1043,9 +1043,15 @@ ScaledVariety:;
10431043
continue;
10441044
}
10451045
else if ( *t == -MINVECTOR ) {
1046-
*r1++ = -VECTOR; t++; *r1++ = *t++;
1047-
*r1++ = -SNUMBER; *r1++ = -1;
1048-
*r1++ = -SNUMBER; *r1++ = 1;
1046+
if ( AC.OldFactArgFlag == NEWFACTARG ) {
1047+
*r1++ = -SNUMBER; *r1++ = -1;
1048+
*r1++ = -VECTOR; t++; *r1++ = *t++;
1049+
}
1050+
else {
1051+
*r1++ = -VECTOR; t++; *r1++ = *t++;
1052+
*r1++ = -SNUMBER; *r1++ = -1;
1053+
*r1++ = -SNUMBER; *r1++ = 1;
1054+
}
10491055
continue;
10501056
}
10511057
}

0 commit comments

Comments
 (0)