From 93077bbcdda14849a88d7e60366e93211cb7c533 Mon Sep 17 00:00:00 2001 From: Houtan Bastani Date: Wed, 2 Oct 2019 10:22:46 +0200 Subject: [PATCH] macro processor: fix bug in range when start point == end point --- src/macro/Expressions.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/macro/Expressions.cc b/src/macro/Expressions.cc index fa924d17..1f86367d 100644 --- a/src/macro/Expressions.cc +++ b/src/macro/Expressions.cc @@ -615,10 +615,10 @@ Range::eval() "the arguments must evaluate to reals"); vector arr; - if (*incdbl > 0 && *startdbl < *enddbl) + if (*incdbl > 0 && *startdbl <= *enddbl) for (double i = *startdbl; i <= *enddbl; i += *incdbl) arr.emplace_back(make_shared(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(i, env));