From 0d6fd3225af2e420dd98328fa67ac07d3429bb0c Mon Sep 17 00:00:00 2001 From: Damien Lefortier Date: Wed, 20 Jan 2010 17:09:06 +0100 Subject: [PATCH] Minor fixes to compile with GCC 3.3 * src/ltlast/automatop.cc, src/ltlast/automatop.hh: Rename nfa as get_nfa to avoid a name clash with the `nfa' class. * src/ltlvisit/clone.cc, src/ltlvisit/nenoform.cc, src/ltlvisit/tostring.cc, src/tgbaalgos/eltl2tgba_lacim.cc: Use get_nfa instead of nfa. * src/tgba/tgbasafracomplement.cc: Don't use a const_reverse_iterator. --- ChangeLog | 14 +++++++++++++- src/ltlast/automatop.cc | 6 +++--- src/ltlast/automatop.hh | 2 +- src/ltlvisit/clone.cc | 2 +- src/ltlvisit/nenoform.cc | 2 +- src/ltlvisit/tostring.cc | 4 ++-- src/tgba/tgbasafracomplement.cc | 4 +++- src/tgbaalgos/eltl2tgba_lacim.cc | 6 +++--- 8 files changed, 27 insertions(+), 13 deletions(-) diff --git a/ChangeLog b/ChangeLog index 298ad15d0..3fc8177de 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2010-01-20 Damien Lefortier + + Minor fixes to compile with GCC 3.3 + + * src/ltlast/automatop.cc, src/ltlast/automatop.hh: Rename nfa as + get_nfa to avoid a name clash with the `nfa' class. + * src/ltlvisit/clone.cc, src/ltlvisit/nenoform.cc, + src/ltlvisit/tostring.cc, src/tgbaalgos/eltl2tgba_lacim.cc: Use + get_nfa instead of nfa. + * src/tgba/tgbasafracomplement.cc: Don't use a + const_reverse_iterator. + 2010-01-20 Alexandre Duret-Lutz Remove some non-determinism in random_graph() @@ -8,7 +20,7 @@ some non-determinism because of the memory layout. It was almost impossible to reproduce bugs found by tests based on randtgba. -2010-01-18 Damien Lefortier +2010-01-19 Damien Lefortier * src/tgbaalgos/ltl2taa.cc: Fix the previous patch. diff --git a/src/ltlast/automatop.cc b/src/ltlast/automatop.cc index 5f1122dd9..34093c944 100644 --- a/src/ltlast/automatop.cc +++ b/src/ltlast/automatop.cc @@ -35,7 +35,7 @@ namespace spot automatop::~automatop() { // Get this instance out of the instance map. - triplet p(std::make_pair(nfa(), negated_), children_); + triplet p(std::make_pair(get_nfa(), negated_), children_); map::iterator i = instances.find(p); assert (i != instances.end()); instances.erase(i); @@ -51,7 +51,7 @@ namespace spot automatop::dump() const { std::string r = is_negated() ? "!" : ""; - r += nfa()->get_name(); + r += get_nfa()->get_name(); r += "("; r += nth(0)->dump(); for (unsigned n = 1; n < size(); ++n) @@ -112,7 +112,7 @@ namespace spot } const spot::ltl::nfa::ptr - automatop::nfa() const + automatop::get_nfa() const { assert(nfa_ != 0); return nfa_; diff --git a/src/ltlast/automatop.hh b/src/ltlast/automatop.hh index cb371dd29..c1f67160a 100644 --- a/src/ltlast/automatop.hh +++ b/src/ltlast/automatop.hh @@ -66,7 +66,7 @@ namespace spot formula* nth(unsigned n); /// Get the NFA of this operator. - const spot::ltl::nfa::ptr nfa() const; + const spot::ltl::nfa::ptr get_nfa() const; /// Whether the automaton is negated. bool is_negated() const; diff --git a/src/ltlvisit/clone.cc b/src/ltlvisit/clone.cc index 0c9ba7065..5ccd18e9f 100644 --- a/src/ltlvisit/clone.cc +++ b/src/ltlvisit/clone.cc @@ -71,7 +71,7 @@ namespace spot automatop::vec* res = new automatop::vec; for (unsigned i = 0; i < ao->size(); ++i) res->push_back(recurse(ao->nth(i))); - result_ = automatop::instance(ao->nfa(), res, ao->is_negated()); + result_ = automatop::instance(ao->get_nfa(), res, ao->is_negated()); } void diff --git a/src/ltlvisit/nenoform.cc b/src/ltlvisit/nenoform.cc index 1dfb233a5..fc5d736a2 100644 --- a/src/ltlvisit/nenoform.cc +++ b/src/ltlvisit/nenoform.cc @@ -166,7 +166,7 @@ namespace spot unsigned aos = ao->size(); for (unsigned i = 0; i < aos; ++i) res->push_back(recurse(ao->nth(i))); - result_ = automatop::instance(ao->nfa(), res, negated); + result_ = automatop::instance(ao->get_nfa(), res, negated); } void diff --git a/src/ltlvisit/tostring.cc b/src/ltlvisit/tostring.cc index bca593eec..3a3cebbe7 100644 --- a/src/ltlvisit/tostring.cc +++ b/src/ltlvisit/tostring.cc @@ -167,7 +167,7 @@ namespace spot top_level_ = false; if (!top_level) os_ << "("; - os_ << ao->nfa()->get_name() << "("; + os_ << ao->get_nfa()->get_name() << "("; unsigned max = ao->size(); ao->nth(0)->accept(*this); for (unsigned n = 1; n < max; ++n) @@ -324,7 +324,7 @@ namespace spot top_level_ = false; if (!top_level) os_ << "("; - os_ << ao->nfa()->get_name() << "("; + os_ << ao->get_nfa()->get_name() << "("; unsigned max = ao->size(); ao->nth(0)->accept(*this); for (unsigned n = 1; n < max; ++n) diff --git a/src/tgba/tgbasafracomplement.cc b/src/tgba/tgbasafracomplement.cc index aa47faf8f..e9c51dc04 100644 --- a/src/tgba/tgbasafracomplement.cc +++ b/src/tgba/tgbasafracomplement.cc @@ -815,7 +815,7 @@ namespace spot void print_safra_automaton(safra_tree_automaton* a) { safra_tree_automaton::automaton_t node_list = a->automaton; - typedef safra_tree_automaton::automaton_t::const_reverse_iterator + typedef safra_tree_automaton::automaton_t::reverse_iterator automaton_cit; typedef safra_tree_automaton::transition_list::const_iterator trans_cit; @@ -825,6 +825,8 @@ namespace spot std::cout << "digraph A {" << std::endl; + /// GCC 3.3 complains if a const_reverse_iterator is used. + /// error: no match for 'operator!=' for (automaton_cit i = a->automaton.rbegin(); i != a->automaton.rend(); ++i) diff --git a/src/tgbaalgos/eltl2tgba_lacim.cc b/src/tgbaalgos/eltl2tgba_lacim.cc index cfa5b4d0d..907b72ba6 100644 --- a/src/tgbaalgos/eltl2tgba_lacim.cc +++ b/src/tgbaalgos/eltl2tgba_lacim.cc @@ -170,12 +170,12 @@ namespace spot v.push_back(const_cast(node->nth(i))); std::pair vp = - recurse_state(node->nfa(), - node->nfa()->get_init_state(), v, m, acc, finish); + recurse_state(node->get_nfa(), + node->get_nfa()->get_init_state(), v, m, acc, finish); // Update finish_ with finish(node). // FIXME: when node is loop, it does not make sense; hence the bddtrue. - finish_[node] = !node->nfa()->is_loop() ? bddtrue : finish; + finish_[node] = !node->get_nfa()->is_loop() ? bddtrue : finish; bdd tmp = bddtrue; for (nmap::iterator it = m.begin(); it != m.end(); ++it)