From: evans1629 Date: Tue, 5 Feb 2002 23:02:04 +0000 (+0000) Subject: Forgot to commit multiVal.c X-Git-Tag: splint-3_0_1_6~13 X-Git-Url: http://andersk.mit.edu/gitweb/splint.git/commitdiff_plain/91f027c7c8a84c9b5a866b1df639845d2938f4ac Forgot to commit multiVal.c --- diff --git a/doc/manual.doc b/doc/manual.doc index 1929fbc..6dc9450 100644 Binary files a/doc/manual.doc and b/doc/manual.doc differ diff --git a/src/multiVal.c b/src/multiVal.c index 5659aaf..ef454c0 100644 --- a/src/multiVal.c +++ b/src/multiVal.c @@ -351,9 +351,33 @@ multiVal multiVal_divide (multiVal m1, multiVal m2) switch (m1->kind) { - case MVLONG: return (multiVal_makeInt (m1->value.ival / m2->value.ival)); - case MVCHAR: return (multiVal_makeChar ((char) (m1->value.cval / m2->value.cval))); - case MVDOUBLE: return (multiVal_makeDouble (m1->value.fval / m2->value.fval)); + case MVLONG: + if (m2->value.ival != 0) + { + return (multiVal_makeInt (m1->value.ival / m2->value.ival)); + } + else + { + return multiVal_undefined; + } + case MVCHAR: + if (m2->value.cval != 0) + { + return (multiVal_makeChar ((char) (m1->value.cval / m2->value.cval))); + } + else + { + return multiVal_undefined; + } + case MVDOUBLE: + if (m2->value.fval != 0.0) + { + return (multiVal_makeDouble (m1->value.fval / m2->value.fval)); + } + else + { + return multiVal_undefined; + } case MVSTRING: return multiVal_undefined; }