introduce SPOT_FALLTHROUGH to cope with -Wimplicit-fallthrough

* NEWS: Mention the fix.
* HACKING: Mention the new macro.
* spot/misc/common.hh (SPOT_FALLTHROUGH): Add the macro.
* bin/randltl.cc, spot/misc/escape.cc, spot/tl/mutation.cc,
spot/tl/print.cc, spot/tl/simplify.hh, spot/tl/snf.cc, spot/twa/acc.cc,
spot/twaalgos/ltl2taa.cc, spot/twaalgos/ltl2tgba_fm.cc,
spot/twaalgos/sepsets.cc, spot/twaalgos/translate.cc: Use it.
This commit is contained in:
Alexandre Duret-Lutz 2016-10-07 17:25:09 +02:00
parent fa80571d44
commit a5d6aa2533
14 changed files with 85 additions and 27 deletions

View file

@ -154,7 +154,7 @@ namespace spot
{
case op::U:
strong = true;
// fall thru
SPOT_FALLTHROUGH;
case op::W:
if (refined_)
contained = lcc_->contained(f[0], f[1]);
@ -186,6 +186,7 @@ namespace spot
return;
case op::M: // Strong Release
strong = true;
SPOT_FALLTHROUGH;
case op::R: // Weak Release
if (refined_)
contained = lcc_->contained(f[0], f[1]);

View file

@ -1264,6 +1264,7 @@ namespace spot
}
case op::NegClosureMarked:
has_marked_ = true;
SPOT_FALLTHROUGH;
case op::NegClosure:
rat_seen_ = true;
{
@ -1394,7 +1395,7 @@ namespace spot
}
case op::EConcatMarked:
has_marked_ = true;
/* fall through */
SPOT_FALLTHROUGH;
case op::EConcat:
rat_seen_ = true;
{

View file

@ -1,6 +1,6 @@
// -*- coding: utf-8 -*-
// Copyright (C) 2015 Laboratoire de Recherche et
// Développement de l'Epita.
// Copyright (C) 2015, 2016 Laboratoire de Recherche et Développement
// de l'Epita.
//
// This file is part of Spot, a model checking library.
//
@ -76,7 +76,7 @@ namespace spot
pos[-1].mark -= p.first;
pos[-1].mark |= p.second;
}
/* fall through */
SPOT_FALLTHROUGH;
case acc_cond::acc_op::Inf:
case acc_cond::acc_op::InfNeg:
pos -= 2;

View file

@ -1,6 +1,6 @@
// -*- coding: utf-8 -*-
// Copyright (C) 2013, 2014, 2015 Laboratoire de Recherche et Développement
// de l'Epita (LRDE).
// Copyright (C) 2013, 2014, 2015, 2016 Laboratoire de Recherche et
// Développement de l'Epita (LRDE).
//
// This file is part of Spot, a model checking library.
//
@ -49,14 +49,13 @@ namespace spot
case High:
options.containment_checks = true;
options.containment_checks_stronger = true;
// fall through
SPOT_FALLTHROUGH;
case Medium:
options.synt_impl = true;
// fall through
SPOT_FALLTHROUGH;
case Low:
options.reduce_basics = true;
options.event_univ = true;
// fall through
}
simpl_owned_ = simpl_ = new tl_simplifier(options, dict);
}