include config.h in all *.cc files
This helps working around missing C functions like strcasecmp that do not exist everywhere (e.g. on Cygwin), and for which lib/ supplies a replacement. Unfortunately we do not have such build in our current continuous integration suite, so we cannot easily detect files where such config.h inclusion would be useful. Therefore this patch simply makes it mandatory to include config.h in *.cc files. Including this in public *.hh file is currently forbidden. * spot/gen/automata.cc, spot/gen/formulas.cc, spot/kripke/fairkripke.cc, spot/kripke/kripke.cc, spot/ltsmin/ltsmin.cc, spot/misc/game.cc, spot/parseaut/fmterror.cc, spot/parsetl/fmterror.cc, spot/parsetl/parsetl.yy, spot/priv/bddalloc.cc, spot/priv/freelist.cc, spot/priv/satcommon.cc, spot/priv/trim.cc, spot/priv/weight.cc, spot/ta/ta.cc, spot/ta/taexplicit.cc, spot/ta/taproduct.cc, spot/ta/tgtaexplicit.cc, spot/ta/tgtaproduct.cc, spot/taalgos/dot.cc, spot/taalgos/emptinessta.cc, spot/taalgos/minimize.cc, spot/taalgos/reachiter.cc, spot/taalgos/statessetbuilder.cc, spot/taalgos/stats.cc, spot/taalgos/tgba2ta.cc, spot/tl/apcollect.cc, spot/tl/contain.cc, spot/tl/declenv.cc, spot/tl/defaultenv.cc, spot/tl/dot.cc, spot/tl/exclusive.cc, spot/tl/hierarchy.cc, spot/tl/length.cc, spot/tl/ltlf.cc, spot/tl/mark.cc, spot/tl/mutation.cc, spot/tl/nenoform.cc, spot/tl/print.cc, spot/tl/randomltl.cc, spot/tl/relabel.cc, spot/tl/remove_x.cc, spot/tl/simplify.cc, spot/tl/snf.cc, spot/tl/unabbrev.cc, spot/twa/acc.cc, spot/twa/bdddict.cc, spot/twa/bddprint.cc, spot/twa/formula2bdd.cc, spot/twa/taatgba.cc, spot/twa/twa.cc, spot/twa/twagraph.cc, spot/twa/twaproduct.cc, spot/twaalgos/aiger.cc, spot/twaalgos/alternation.cc, spot/twaalgos/are_isomorphic.cc, spot/twaalgos/bfssteps.cc, spot/twaalgos/canonicalize.cc, spot/twaalgos/cleanacc.cc, spot/twaalgos/cobuchi.cc, spot/twaalgos/complement.cc, spot/twaalgos/complete.cc, spot/twaalgos/compsusp.cc, spot/twaalgos/couvreurnew.cc, spot/twaalgos/cycles.cc, spot/twaalgos/degen.cc, spot/twaalgos/determinize.cc, spot/twaalgos/dot.cc, spot/twaalgos/dtbasat.cc, spot/twaalgos/dtwasat.cc, spot/twaalgos/dualize.cc, spot/twaalgos/emptiness.cc, spot/twaalgos/gtec/ce.cc, spot/twaalgos/gtec/gtec.cc, spot/twaalgos/gtec/sccstack.cc, spot/twaalgos/gtec/status.cc, spot/twaalgos/gv04.cc, spot/twaalgos/hoa.cc, spot/twaalgos/iscolored.cc, spot/twaalgos/isdet.cc, spot/twaalgos/isunamb.cc, spot/twaalgos/isweakscc.cc, spot/twaalgos/langmap.cc, spot/twaalgos/lbtt.cc, spot/twaalgos/ltl2taa.cc, spot/twaalgos/ltl2tgba_fm.cc, spot/twaalgos/magic.cc, spot/twaalgos/mask.cc, spot/twaalgos/minimize.cc, spot/twaalgos/neverclaim.cc, spot/twaalgos/parity.cc, spot/twaalgos/postproc.cc, spot/twaalgos/powerset.cc, spot/twaalgos/product.cc, spot/twaalgos/rabin2parity.cc, spot/twaalgos/randomgraph.cc, spot/twaalgos/randomize.cc, spot/twaalgos/reachiter.cc, spot/twaalgos/relabel.cc, spot/twaalgos/remfin.cc, spot/twaalgos/remprop.cc, spot/twaalgos/sbacc.cc, spot/twaalgos/sccfilter.cc, spot/twaalgos/sccinfo.cc, spot/twaalgos/se05.cc, spot/twaalgos/sepsets.cc, spot/twaalgos/simulation.cc, spot/twaalgos/split.cc, spot/twaalgos/stats.cc, spot/twaalgos/strength.cc, spot/twaalgos/stripacc.cc, spot/twaalgos/stutter.cc, spot/twaalgos/sum.cc, spot/twaalgos/tau03.cc, spot/twaalgos/tau03opt.cc, spot/twaalgos/totgba.cc, spot/twaalgos/toweak.cc, spot/twaalgos/translate.cc, spot/twaalgos/word.cc, tests/core/acc.cc, tests/core/bitvect.cc, tests/core/checkpsl.cc, tests/core/checkta.cc, tests/core/consterm.cc, tests/core/emptchk.cc, tests/core/equalsf.cc, tests/core/graph.cc, tests/core/ikwiad.cc, tests/core/intvcmp2.cc, tests/core/intvcomp.cc, tests/core/kind.cc, tests/core/kripkecat.cc, tests/core/length.cc, tests/core/ltlrel.cc, tests/core/ngraph.cc, tests/core/parity.cc, tests/core/randtgba.cc, tests/core/readltl.cc, tests/core/reduc.cc, tests/core/safra.cc, tests/core/sccif.cc, tests/core/syntimpl.cc, tests/core/taatgba.cc, tests/core/tostring.cc, tests/core/trival.cc, tests/core/twagraph.cc, tests/ltsmin/modelcheck.cc, spot/parseaut/scanaut.ll, spot/parsetl/scantl.ll: Include config.h. * spot/gen/Makefile.am, spot/graph/Makefile.am, spot/kripke/Makefile.am, spot/ltsmin/Makefile.am, spot/parseaut/Makefile.am, spot/parsetl/Makefile.am, spot/priv/Makefile.am, spot/ta/Makefile.am, spot/taalgos/Makefile.am, spot/tl/Makefile.am, spot/twa/Makefile.am, spot/twaalgos/Makefile.am, spot/twaalgos/gtec/Makefile.am, tests/Makefile.am: Add the -I lib/ flags. * tests/sanity/includes.test: Catch missing config.h in *.cc, and diagnose config.h in *.hh. * tests/sanity/style.test: Better diagnostics.
This commit is contained in:
parent
cdec6b28a2
commit
ac6b0c9432
165 changed files with 493 additions and 324 deletions
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2013, 2014, 2015, 2016, 2017 Laboratoire de Recherche
|
||||
// Copyright (C) 2013-2018 Laboratoire de Recherche
|
||||
// et Développement de l'Epita.
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -17,6 +17,7 @@
|
|||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#include "config.h"
|
||||
#include <fstream>
|
||||
#include <sstream>
|
||||
#include <map>
|
||||
|
|
@ -41,14 +42,14 @@
|
|||
// file used to communicate with the sat solver will be left in
|
||||
// the current directory.
|
||||
//
|
||||
// Additionally, if the following DEBUG macro is set to 1, the CNF
|
||||
// Additionally, if the following TRACE macro is set to 1, the CNF
|
||||
// file will be output with a comment before each clause, and an
|
||||
// additional output file (dtwa-sat.dbg) will be created with a list
|
||||
// of all positive variables in the result and their meaning.
|
||||
|
||||
#define DEBUG 0
|
||||
#define TRACE 0
|
||||
|
||||
#if DEBUG
|
||||
#if TRACE
|
||||
#define dout out << "c "
|
||||
#define cnf_comment(...) solver.comment(__VA_ARGS__)
|
||||
#define trace std::cerr
|
||||
|
|
@ -247,7 +248,7 @@ namespace spot
|
|||
int
|
||||
transid(unsigned src, bdd& cond, unsigned dst)
|
||||
{
|
||||
#if DEBUG
|
||||
#if TRACE
|
||||
try
|
||||
{
|
||||
return helper.get_t(src, alpha_map.at(cond), dst);
|
||||
|
|
@ -272,7 +273,7 @@ namespace spot
|
|||
int
|
||||
transacc(unsigned src, bdd& cond, unsigned dst, unsigned nacc)
|
||||
{
|
||||
#if DEBUG
|
||||
#if TRACE
|
||||
try
|
||||
{
|
||||
return helper.get_ta(src, alpha_map.at(cond), dst, nacc);
|
||||
|
|
@ -293,7 +294,7 @@ namespace spot
|
|||
unsigned dst_ref, acc_cond::mark_t acc_cand = 0U,
|
||||
acc_cond::mark_t acc_ref = 0U)
|
||||
{
|
||||
#if DEBUG
|
||||
#if TRACE
|
||||
try
|
||||
{
|
||||
return helper.get_p(
|
||||
|
|
@ -315,7 +316,7 @@ namespace spot
|
|||
#endif
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
#if TRACE
|
||||
int
|
||||
pathid(unsigned path, unsigned src_cand, unsigned dst_cand)
|
||||
{
|
||||
|
|
@ -539,7 +540,7 @@ namespace spot
|
|||
bool state_based,
|
||||
bool colored)
|
||||
{
|
||||
#if DEBUG
|
||||
#if TRACE
|
||||
debug_dict = ref->get_dict();
|
||||
#endif
|
||||
// Compute the AP used.
|
||||
|
|
@ -572,7 +573,7 @@ namespace spot
|
|||
// Empty automaton is impossible.
|
||||
assert(d.cand_size > 0);
|
||||
|
||||
#if DEBUG
|
||||
#if TRACE
|
||||
debug_ref_acc = &ref->acc();
|
||||
debug_cand_acc = &d.cacc;
|
||||
solver.comment("d.ref_size:", d.ref_size, '\n');
|
||||
|
|
@ -597,7 +598,7 @@ namespace spot
|
|||
for (unsigned q1 = 0; q1 < d.cand_size; ++q1)
|
||||
for (unsigned l = 0; l < alpha_size; ++l)
|
||||
{
|
||||
#if DEBUG
|
||||
#if TRACE
|
||||
solver.comment("");
|
||||
for (unsigned q2 = 0; q2 < d.cand_size; ++q2)
|
||||
{
|
||||
|
|
@ -768,7 +769,7 @@ namespace spot
|
|||
|
||||
for (auto& v: missing)
|
||||
{
|
||||
#if DEBUG
|
||||
#if TRACE
|
||||
solver.comment((rejloop ?
|
||||
"(11) " : "(12) "), f_p,
|
||||
" ∧ ", d.fmt_t(q2, l, q3),
|
||||
|
|
@ -787,7 +788,7 @@ namespace spot
|
|||
orsep = " ∨ ";
|
||||
}
|
||||
solver.comment_rec(")\n");
|
||||
#endif // DEBUG
|
||||
#endif // TRACE
|
||||
solver.add({-pid, -ti});
|
||||
for (int s: v)
|
||||
if (s < 0)
|
||||
|
|
@ -825,7 +826,7 @@ namespace spot
|
|||
q1, q1p, q3, dp, f2, f2p);
|
||||
if (pid == p2id)
|
||||
continue;
|
||||
#if DEBUG
|
||||
#if TRACE
|
||||
solver.comment("(13) ", f_p, " ∧ ",
|
||||
d.fmt_t(q1, l, q3), "δ ");
|
||||
|
||||
|
|
@ -883,7 +884,7 @@ namespace spot
|
|||
a->set_acceptance(satdict.cand_nacc, satdict.cand_acc);
|
||||
a->new_states(satdict.cand_size);
|
||||
|
||||
#if DEBUG
|
||||
#if TRACE
|
||||
std::fstream out("dtwa-sat.dbg",
|
||||
std::ios_base::trunc | std::ios_base::out);
|
||||
out.exceptions(std::ifstream::failbit | std::ifstream::badbit);
|
||||
|
|
@ -922,7 +923,7 @@ namespace spot
|
|||
}
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
#if TRACE
|
||||
dout << "--- transition variables ---\n";
|
||||
for (unsigned i = 0; i < satdict.cand_size; ++i)
|
||||
for (unsigned j = 0; j < alpha_size; ++j)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue