macro processor: fix bug in range when start point == end point

issue#70
Houtan Bastani 2019-10-02 10:22:46 +02:00
parent 5e54761201
commit 93077bbcdd
No known key found for this signature in database
GPG Key ID: 000094FB955BE169
1 changed files with 2 additions and 2 deletions

View File

@ -615,10 +615,10 @@ Range::eval()
"the arguments must evaluate to reals");
vector<ExpressionPtr> arr;
if (*incdbl > 0 && *startdbl < *enddbl)
if (*incdbl > 0 && *startdbl <= *enddbl)
for (double i = *startdbl; i <= *enddbl; i += *incdbl)
arr.emplace_back(make_shared<Real>(i, env));
else if (*startdbl > *enddbl && *incdbl < 0)
else if (*startdbl >= *enddbl && *incdbl < 0)
for (double i = *startdbl; i >= *enddbl; i += *incdbl)
arr.emplace_back(make_shared<Real>(i, env));