Fully quote guards used by neverclaims.
Especially with should write !(p0) and not !p0, because p0 is usually #define'd by the user and he may have forgotten to quote the value of the macro. This issue was discovered by Kristin Yvonne Rozier and diagnosed by Gerard Holzmann. * src/tgbaalgos/neverclaim.cc (process_link): Call to_spin_string(..., true) to fully parentheses the string. * src/tgbatest/neverclaimread.test: Add a test.
This commit is contained in:
parent
2b5956c2d4
commit
ea6a1ffc22
4 changed files with 19 additions and 1 deletions
13
ChangeLog
13
ChangeLog
|
|
@ -1,3 +1,16 @@
|
|||
2011-11-16 Alexandre Duret-Lutz <adl@lrde.epita.fr>
|
||||
|
||||
Fully quote guards used by neverclaims.
|
||||
|
||||
Especially with should write !(p0) and not !p0, because p0 is
|
||||
usually #define'd by the user and he may have forgotten to quote
|
||||
the value of the macro. This issue was discovered by Kristin
|
||||
Yvonne Rozier and diagnosed by Gerard Holzmann.
|
||||
|
||||
* src/tgbaalgos/neverclaim.cc (process_link): Call
|
||||
to_spin_string(..., true) to fully parentheses the string.
|
||||
* src/tgbatest/neverclaimread.test: Add a test.
|
||||
|
||||
2011-11-11 Alexandre Duret-Lutz <adl@lrde.epita.fr>
|
||||
|
||||
Fix a g++-4.7 warning about a variable used only in an assert().
|
||||
|
|
|
|||
1
THANKS
1
THANKS
|
|
@ -1,6 +1,7 @@
|
|||
We are grateful to these people for their comments, help, or
|
||||
suggestions.
|
||||
|
||||
Gerard J. Holzmann
|
||||
Heikki Tauriainen
|
||||
Jean-Michel Couvreur
|
||||
Jean-Michel Ilié
|
||||
|
|
|
|||
|
|
@ -186,7 +186,7 @@ namespace spot
|
|||
os_ << " :: (";
|
||||
const ltl::formula* f = bdd_to_formula(si->current_condition(),
|
||||
automata_->get_dict());
|
||||
to_spin_string(f, os_);
|
||||
to_spin_string(f, os_, true);
|
||||
f->destroy();
|
||||
state* current = si->current_state();
|
||||
os_ << ") -> goto " << get_state_label(current, out) << std::endl;
|
||||
|
|
|
|||
|
|
@ -118,5 +118,9 @@ do
|
|||
run 0 ../ltl2tgba -E -Pf.tgba -XN f.ltl2ba
|
||||
fi
|
||||
run 0 ../ltl2tgba -DS -NN -f "$f" > f.spot
|
||||
# Make sure there is no `!x' occurring in the
|
||||
# output. Because `x' is usually #define'd, we
|
||||
# should use `!(x)' in guards.
|
||||
grep '![^(].*->' f.spot && exit 1
|
||||
run 0 ../ltl2tgba -E -Pf.tgba -XN f.spot
|
||||
done <formulae
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue