From db5128a9a548f265b9725e8d6e75818fb36657aa Mon Sep 17 00:00:00 2001 From: yhirose Date: Thu, 30 Jul 2015 17:24:53 -0400 Subject: [PATCH] Fixed zero divide problem. --- language/culebra.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/language/culebra.h b/language/culebra.h index 26aede9..d44292c 100644 --- a/language/culebra.h +++ b/language/culebra.h @@ -778,8 +778,13 @@ private: case '+': ret += val; break; case '-': ret -= val; break; case '*': ret *= val; break; - case '/': ret /= val; break; case '%': ret %= val; break; + case '/': + if (val == 0) { + throw std::runtime_error("divide by 0 error"); + } + ret /= val; + break; } } return Value(ret);