diff --git a/src/ltltest/reduccmp.test b/src/ltltest/reduccmp.test index a6c4b47de..853aa450b 100755 --- a/src/ltltest/reduccmp.test +++ b/src/ltltest/reduccmp.test @@ -329,6 +329,7 @@ for x in ../reduccmp ../reductaustr; do run 0 $x '{a;(b[*2..4];c*;([*0]+{d;e}))*}!' \ '{a;(b[*2..4];c*;([*0]+{d;e}))*}!' run 0 $x '{((a*;b)+[*0])[*4..6]}!' '{((a*;b))[*0..6]}!' + run 0 $x '{c[*];e[*]}[]-> a' '{c[*];e[*]}[]-> a' ;; esac diff --git a/src/ltlvisit/simplify.cc b/src/ltlvisit/simplify.cc index d3fa5d077..098a0fd9f 100644 --- a/src/ltlvisit/simplify.cc +++ b/src/ltlvisit/simplify.cc @@ -1567,6 +1567,7 @@ namespace spot result_ = recurse_destroy(result_); return true; } + r->destroy(); } // {s[*];r}[]->b = !s R ({r}[]->b) // if s is Boolean and r does not accept [*0]; @@ -1588,6 +1589,7 @@ namespace spot result_ = recurse_destroy(result_); return true; } + r->destroy(); } // {r₁;r₂;r₃}[]->b = {r₁}[]->X({r₂}[]->X({r₃}[]->b))