From 483212d27547bf3c7fa00ece9f77442d85c84acc Mon Sep 17 00:00:00 2001 From: Alexandre Duret-Lutz Date: Wed, 25 Mar 2015 21:29:42 +0100 Subject: [PATCH] Make --keep-states more useful by actually removing states. Fixes #70. We don't modify the behavior of mask_keep_states(), because it is actually useful in some algorithm to remove states without renumbering all the other states. * src/bin/autfilt.cc: Call purge_dead_states(). * src/tgbatest/maskkeep.test: Adjust. --- src/bin/autfilt.cc | 5 ++++- src/tgbatest/maskkeep.test | 40 ++++++++------------------------------ 2 files changed, 12 insertions(+), 33 deletions(-) diff --git a/src/bin/autfilt.cc b/src/bin/autfilt.cc index d17fa3aa8..837af8132 100644 --- a/src/bin/autfilt.cc +++ b/src/bin/autfilt.cc @@ -506,7 +506,10 @@ namespace // Postprocessing. if (!opt_keep_states.empty()) - aut = mask_keep_states(aut, opt_keep_states, opt_keep_states_initial); + { + aut = mask_keep_states(aut, opt_keep_states, opt_keep_states_initial); + aut->purge_dead_states(); + } if (opt_mask_acc) aut = mask_acc_sets(aut, opt_mask_acc & aut->acc().all_sets()); diff --git a/src/tgbatest/maskkeep.test b/src/tgbatest/maskkeep.test index a5d966a5c..3ad825795 100755 --- a/src/tgbatest/maskkeep.test +++ b/src/tgbatest/maskkeep.test @@ -48,7 +48,7 @@ EOF cat >expect1 <expect2 <output diff output expect1 run 0 ../../bin/autfilt --keep-states=1 input1 -H >output -diff output expect2 +diff output expect1 cat >expect3 <expect4 <