diff --git a/src/main/java/groovy/lang/NumberRange.java b/src/main/java/groovy/lang/NumberRange.java
index <HASH>..<HASH> 100644
--- a/src/main/java/groovy/lang/NumberRange.java
+++ b/src/main/java/groovy/lang/NumberRange.java
@@ -644,7 +644,7 @@ public class NumberRange extends AbstractList<Comparable> implements Range<Compa
                     // make the first fetch lazy too
                     next = isAscending ? range.getFrom() : range.getTo();
                     if (!range.inclusiveLeft) {
-                        next = next();
+                        next = isAscending ? increment(next, step) : decrement(next, step);
                     }
                 } else {
                     next = isAscending ? increment(next, step) : decrement(next, step);
GROOVY-<I>: Fixed NumberRange.get not throwing at certain conditions

With ranges like 0G<..<1G, the get method would erroneously return 1G
instead of throwing an exception. This commit fixes that by directly
incrementing the current value in the iterator instead of next() call.