autfilt: fix simpification of exclusive AP

* bin/autfilt.cc: Here.
* tests/core/exclusive-tgba.test: Test it.
* NEWS: Mention the fix.
This commit is contained in:
Alexandre Duret-Lutz 2016-04-29 12:08:32 +02:00
parent 188cb8e4ab
commit 1ceb0ed272
3 changed files with 25 additions and 4 deletions

View file

@ -826,12 +826,14 @@ namespace
if (opt_mask_acc)
aut = mask_acc_sets(aut, opt_mask_acc & aut->acc().all_sets());
if (!opt->excl_ap.empty())
aut = opt->excl_ap.constrain(aut, opt_simplify_exclusive_ap);
if (!opt->rem_ap.empty())
aut = opt->rem_ap.strip(aut);
// opt_simplify_exclusive_ap is handled only after
// post-processing.
if (!opt->excl_ap.empty())
aut = opt->excl_ap.constrain(aut, false);
if (opt_destut)
aut = spot::closure(std::move(aut));
if (opt_instut == 1)
@ -870,6 +872,9 @@ namespace
aut = post.run(aut, nullptr);
if (opt_simplify_exclusive_ap && !opt->excl_ap.empty())
aut = opt->excl_ap.constrain(aut, opt_simplify_exclusive_ap);
if (randomize_st || randomize_tr)
spot::randomize(aut, randomize_st, randomize_tr);