From 7e271310ff7a844270a981bb8fc1f961bb45f319 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Sun, 29 Dec 2019 22:53:37 +0000 Subject: [PATCH] Fix constant out of bounds bug --- src/check_expr.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/check_expr.cpp b/src/check_expr.cpp index fa92604ee..bb76638ec 100644 --- a/src/check_expr.cpp +++ b/src/check_expr.cpp @@ -3119,13 +3119,12 @@ bool check_index_value(CheckerContext *c, bool open_range, Ast *index_value, i64 } if (value) *value = v; bool out_of_bounds = false; - if (open_range) { - out_of_bounds = v >= max_count; - } else { - out_of_bounds = v >= max_count+1; - } if (v < 0) { out_of_bounds = true; + } else if (open_range) { + out_of_bounds = v > max_count; + } else { + out_of_bounds = v >= max_count; } if (out_of_bounds) {