minimize_wdba: fix nondeterministic execution
Fixes core/readsave.test and python/automata.ipython with gcc-snapshot (future gcc 7). * spot/twaalgos/minimize.cc: Here. * NEWS: Mention the change. * tests/core/acc_word.test: Adjust test case.
This commit is contained in:
parent
20cf43b3ea
commit
d7d6b40926
3 changed files with 13 additions and 10 deletions
3
NEWS
3
NEWS
|
|
@ -180,6 +180,9 @@ New in spot 2.0.3a (not yet released)
|
|||
automata, the error message would report "Comp(Ni)*Comp(Pj)" as
|
||||
non-empty while the actual culprit was "Comp(Nj)*Comp(Pi)".
|
||||
|
||||
* Fix some non-deterministic execution of minimize_wdba(), causing
|
||||
test-suite failures with the future G++ 7, and clang 3.9.
|
||||
|
||||
New in spot 2.0.3 (2016-07-11)
|
||||
|
||||
Bug fixes:
|
||||
|
|
|
|||
|
|
@ -49,9 +49,9 @@
|
|||
|
||||
namespace spot
|
||||
{
|
||||
// FIXME: do we really want to use unordered_set instead of set here?
|
||||
// This calls for benchmarking.
|
||||
typedef state_set hash_set;
|
||||
// This is called hash_set for historical reason, but we need the
|
||||
// order inside hash_set to be deterministic.
|
||||
typedef std::set<const state*, state_ptr_less_than> hash_set;
|
||||
typedef state_map<unsigned> hash_map;
|
||||
|
||||
namespace
|
||||
|
|
|
|||
|
|
@ -99,13 +99,13 @@ cat >expected <<EOF
|
|||
HOA: v1.1
|
||||
name: "Fa & Fb"
|
||||
States: 4
|
||||
Start: 2
|
||||
Start: 3
|
||||
AP: 2 "a" "b"
|
||||
acc-name: Buchi
|
||||
Acceptance: 1 Inf(0)
|
||||
properties: trans-labels explicit-labels state-acc complete
|
||||
properties: deterministic stutter-invariant terminal
|
||||
spot.highlight.edges: 1 3 2 3 5 3 6 3 7 2 8 2
|
||||
spot.highlight.edges: 1 3 2 3 4 2 7 3 8 2 9 3
|
||||
--BODY--
|
||||
State: 0 {0}
|
||||
[t] 0
|
||||
|
|
@ -113,13 +113,13 @@ State: 1
|
|||
[1] 0
|
||||
[!1] 1
|
||||
State: 2
|
||||
[0] 0
|
||||
[!0] 2
|
||||
State: 3
|
||||
[0&1] 0
|
||||
[0&!1] 1
|
||||
[!0&!1] 2
|
||||
[!0&1] 3
|
||||
State: 3
|
||||
[0] 0
|
||||
[!0] 3
|
||||
[!0&1] 2
|
||||
[!0&!1] 3
|
||||
--END--
|
||||
EOF
|
||||
diff expected out
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue