diff --git a/src/janus.cpp b/src/janus.cpp index d1ee260..d3f4cee 100644 --- a/src/janus.cpp +++ b/src/janus.cpp @@ -21,10 +21,10 @@ using namespace janus; static int tryStringToInt(string const& arg) { try { return stoi(arg); - } catch (invalid_argument) { + } catch (std::invalid_argument const&) { cerr << "Error: cannot parse '" << arg << "' as an integer.\n"; exit(1); - } catch (out_of_range) { + } catch (std::out_of_range const&) { cerr << "Error: " << arg << " is out of range.\n"; exit(1); } @@ -34,11 +34,11 @@ static int tryStringToInt(string const& arg) { static double tryStringToDouble(string const& arg) { try { return stod(arg); - } catch (invalid_argument) { + } catch (std::invalid_argument const&) { cerr << "Error: cannot parse '" << arg << "' "; cerr << "as a floating-point value.\n"; exit(1); - } catch (out_of_range) { + } catch (std::out_of_range const&) { cerr << "Error: " << arg << " is out of range.\n"; exit(1); } @@ -219,6 +219,8 @@ int ArgParser::lenList(string const& name) { return options[name]->ints.size(); case OptionType::Double: return options[name]->doubles.size(); + default: + return -1; } }