ltlgrind: improve error message when formulas are missing
The error message, inherited from ltl2tgba, used to say "No formula to translate", but "translate" isn't appropriate here. * bin/common_finput.cc, bin/common_finput.hh (check_no_formula): Allow "translate" to be changed. * bin/ltlgrind.cc: Change it. * tests/core/ltlgrind.test: Test it.
This commit is contained in:
parent
783efa2fe8
commit
bdc63db9f0
4 changed files with 13 additions and 5 deletions
|
|
@ -388,14 +388,14 @@ job_processor::run()
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
|
||||||
void check_no_formula()
|
void check_no_formula(const char* action)
|
||||||
{
|
{
|
||||||
if (!jobs.empty())
|
if (!jobs.empty())
|
||||||
return;
|
return;
|
||||||
if (isatty(STDIN_FILENO))
|
if (isatty(STDIN_FILENO))
|
||||||
error(2, 0, "No formula to translate? Run '%s --help' for help.\n"
|
error(2, 0, "No formula to %s? Run '%s --help' for help.\n"
|
||||||
"Use '%s -' to force reading formulas from the standard "
|
"Use '%s -' to force reading formulas from the standard "
|
||||||
"input.", program_name, program_name);
|
"input.", action, program_name, program_name);
|
||||||
jobs.emplace_back("-", job_type::LTL_FILENAME);
|
jobs.emplace_back("-", job_type::LTL_FILENAME);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -93,5 +93,5 @@ public:
|
||||||
|
|
||||||
// Report and error message or add a default job depending on whether
|
// Report and error message or add a default job depending on whether
|
||||||
// the input is a tty.
|
// the input is a tty.
|
||||||
void check_no_formula();
|
void check_no_formula(const char* action = "translate");
|
||||||
void check_no_automaton();
|
void check_no_automaton();
|
||||||
|
|
|
||||||
|
|
@ -199,7 +199,7 @@ main(int argc, char* argv[])
|
||||||
|
|
||||||
mut_opts |= opt_all;
|
mut_opts |= opt_all;
|
||||||
|
|
||||||
check_no_formula();
|
check_no_formula("mutate");
|
||||||
|
|
||||||
mutate_processor processor;
|
mutate_processor processor;
|
||||||
if (processor.run())
|
if (processor.run())
|
||||||
|
|
|
||||||
|
|
@ -200,3 +200,11 @@ EOF
|
||||||
|
|
||||||
ltlgrind -f 'a U b' -m 999999999999999999999999999 2>err && exit 1
|
ltlgrind -f 'a U b' -m 999999999999999999999999999 2>err && exit 1
|
||||||
grep 'too large' err
|
grep 'too large' err
|
||||||
|
|
||||||
|
# The following message appears only if run from a tty.
|
||||||
|
if (: > /dev/tty) >/dev/null 2>&1 ; then
|
||||||
|
ltlgrind </dev/tty 2>err && exit 1
|
||||||
|
grep 'No formula to mutate' err
|
||||||
|
fi
|
||||||
|
|
||||||
|
:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue