ignore false edges in emptiness checks and scc_info
Based on reports by Florian Renkin and Jens Kreber. * spot/twaalgos/bfssteps.cc, spot/twaalgos/couvreurnew.cc, spot/twaalgos/gtec/gtec.cc, spot/twaalgos/gv04.cc, spot/twaalgos/magic.cc, spot/twaalgos/sccinfo.cc spot/twaalgos/se05.cc, spot/twaalgos/tau03.cc: Ignore bddfalse edges. * spot/twaalgos/gtec/gtec.hh: Remove debugging function. * tests/core/neverclaimread.test: Adjust. * tests/python/ecfalse.py: New test file. * tests/Makefile.am: Add it. * NEWS: Mention the bug.
This commit is contained in:
parent
67fa19cb08
commit
0b25820211
13 changed files with 206 additions and 61 deletions
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2014, 2015, 2018 Laboratoire de Recherche et
|
||||
// Copyright (C) 2014, 2015, 2018, 2020 Laboratoire de Recherche et
|
||||
// Développement de l'Epita (LRDE)
|
||||
// Copyright (C) 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
|
|
@ -78,6 +78,10 @@ namespace spot
|
|||
todo.pop_front();
|
||||
for (auto i: a_->succ(src))
|
||||
{
|
||||
// skip false transitions
|
||||
if (SPOT_UNLIKELY(i->cond() == bddfalse))
|
||||
continue;
|
||||
|
||||
const state* dest = filter(i->dst());
|
||||
|
||||
if (!dest)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue