Compare commits

..

1 commit

Author SHA1 Message Date
4ee8746b64 merge 2025-10-15 16:38:20 +02:00

View file

@ -124,16 +124,19 @@ namespace spot
bool edge_is_acc = ((trans_based && e.acc)
|| (!trans_based && sere_aut->state_is_accepting(e.dst)));
unsigned new_edge;
// point to accepting sink instead of original dst if asked
if(use_accepting_sink && edge_is_acc)
new_edge = aut_->new_edge(new_st, accepting_sink_, e.cond);
else
new_edge = aut_->new_edge(new_st, register_state(e.dst), e.cond);
// remember if old edges were accepting
if (acc_edges != nullptr && edge_is_acc)
acc_edges->push_back(new_edge);
if (edge_is_acc)
{
// point to accepting sink instead of original dst if asked
if (use_accepting_sink)
aut_->new_edge(new_st, accepting_sink_, e.cond);
else
{
unsigned new_e = aut_->new_edge(new_st, register_state(e.dst), e.cond);
// remember if old edges were accepting
if (acc_edges != nullptr)
acc_edges->push_back(new_e);
}
}
}
}
@ -337,9 +340,6 @@ namespace spot
for (unsigned i : acc_edges)
{
auto& e1 = aut_->edge_storage(i);
// self loop used to mark accepting state, skip it!
if (e1.cond == bddfalse)
continue;
for (const auto& e2 : aut_->out(rhs_init))
aut_->new_edge(e1.src, e2.dst, e1.cond & e2.cond);
}