From bd424ceccd370640fed3e76d788c5c20d15e4cf6 Mon Sep 17 00:00:00 2001
From: Aadhavan Srinivasan <aadhavan@twomorecents.org>
Date: Wed, 29 Jan 2025 14:45:05 -0500
Subject: [PATCH] Catch error from range2regex() and return it

---
 compile.go | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/compile.go b/compile.go
index c9d8c23..9663f6d 100644
--- a/compile.go
+++ b/compile.go
@@ -165,7 +165,10 @@ func shuntingYard(re string, flags ...ReFlag) ([]postfixNode, error) {
 			var rangeStart int
 			var rangeEnd int
 			fmt.Sscanf(tmpStr, "%d-%d", &rangeStart, &rangeEnd)
-			regex := range2regex(rangeStart, rangeEnd)
+			regex, err := range2regex(rangeStart, rangeEnd)
+			if err != nil {
+				return nil, err
+			}
 			re_runes = append(re_runes, []rune(regex)...)
 		} else if c == '(' && i < len(re_runes_orig)-2 && re_runes_orig[i+1] == '?' && re_runes_orig[i+2] == ':' {
 			re_runes = append(re_runes, NONCAPLPAREN_CHAR)