projects
/
cvc5.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
79b8044
)
Fixed bug in array constant normalization found by fuzzer.
author
Clark Barrett
<barrett@cs.nyu.edu>
Tue, 13 Nov 2012 01:24:27 +0000
(
01:24
+0000)
committer
Clark Barrett
<barrett@cs.nyu.edu>
Tue, 13 Nov 2012 01:24:27 +0000
(
01:24
+0000)
src/theory/arrays/theory_arrays_rewriter.h
patch
|
blob
|
history
diff --git
a/src/theory/arrays/theory_arrays_rewriter.h
b/src/theory/arrays/theory_arrays_rewriter.h
index f2632c739590ad6429458ab78f5461e54ab7a7f1..dbbfd04ddd1d2c1355180480008d26f85fa09540 100644
(file)
--- a/
src/theory/arrays/theory_arrays_rewriter.h
+++ b/
src/theory/arrays/theory_arrays_rewriter.h
@@
-94,6
+94,7
@@
class TheoryArraysRewriter {
// replaced, we can just return node[0]
return node[0];
}
+ // else rebuild the store without the replaced write and then exit
}
else {
n = nm->mkNode(kind::STORE, n, index, value);
@@
-106,6
+107,11
@@
class TheoryArraysRewriter {
elements.pop_back();
}
+ // Ready to exit if write was to the default value (see previous comment)
+ if (value == defaultValue) {
+ return n;
+ }
+
Cardinality indexCard = index.getType().getCardinality();
if (indexCard.isInfinite()) {
return n;