#282 abort when no argument

This commit is contained in:
Vlad Dobromyslov 2022-02-21 13:57:38 +00:00 committed by serkixenos
parent 5860002d0a
commit 93b57f294d

View file

@ -86,6 +86,8 @@ int main(int argc, char **argv) {
bpo::variables_map options; bpo::variables_map options;
try
{
bpo::parsed_options po = bpo::command_line_parser(argc, argv).options(opts).allow_unregistered().run(); bpo::parsed_options po = bpo::command_line_parser(argc, argv).options(opts).allow_unregistered().run();
std::vector<std::string> unrecognized = bpo::collect_unrecognized(po.options, bpo::include_positional); std::vector<std::string> unrecognized = bpo::collect_unrecognized(po.options, bpo::include_positional);
if (unrecognized.size() > 0) { if (unrecognized.size() > 0) {
@ -96,6 +98,12 @@ int main(int argc, char **argv) {
return 0; return 0;
} }
bpo::store(po, options); bpo::store(po, options);
}
catch (const boost::program_options::invalid_command_line_syntax & e)
{
std::cout << e.what() << std::endl;
return 0;
}
if (options.count("help")) { if (options.count("help")) {
std::cout << opts << "\n"; std::cout << opts << "\n";