summaryrefslogtreecommitdiff
path: root/src/util/bitvector.h
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@gmail.com>2012-04-11 16:31:03 +0000
committerMorgan Deters <mdeters@gmail.com>2012-04-11 16:31:03 +0000
commitd01d291be3213368985f28d0072905c4f033d5ff (patch)
tree8524a2b6a00c012221ecca9266c3ab9fb11989ed /src/util/bitvector.h
parent889853e225687dfef36b15ca1dccf74682e0fd66 (diff)
merge from arrays-clark branch
Diffstat (limited to 'src/util/bitvector.h')
-rw-r--r--src/util/bitvector.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/util/bitvector.h b/src/util/bitvector.h
index 512f23136..5d0c301d4 100644
--- a/src/util/bitvector.h
+++ b/src/util/bitvector.h
@@ -188,12 +188,20 @@ public:
BitVector unsignedDiv (const BitVector& y) const {
Assert (d_size == y.d_size);
+ // TODO: decide whether we really want these semantics
+ if (y.d_value == 0) {
+ return BitVector(d_size, Integer(0));
+ }
Assert (d_value >= 0 && y.d_value > 0);
return BitVector(d_size, d_value.floorDivideQuotient(y.d_value));
}
BitVector unsignedRem(const BitVector& y) const {
Assert (d_size == y.d_size);
+ // TODO: decide whether we really want these semantics
+ if (y.d_value == 0) {
+ return BitVector(d_size, Integer(0));
+ }
Assert (d_value >= 0 && y.d_value > 0);
return BitVector(d_size, d_value.floorDivideRemainder(y.d_value));
}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback