id summary reporter owner description type status milestone component version severity resolution keywords cc 13125 parse_config_file silently ignores IO errors Johannes Spangenberg Vladimir Prus "The function `parse_config_file` silently ignores I/O errors while reading the configuration file. A easy way to reproduce the bug is to specify a directory as configuration file. On Linux, `open` will succeed but subsequent calls to `read` will fail with `EISDIR`. --- Minimal and complete program to reproduce the problem: {{{#!c++ #include #include #include using namespace boost::program_options; int main(int argc, char *argv[]) { if (argc != 2) { std::cerr << ""Invalid amount of arguments"" << std::endl; return 1; } try { options_description desc(""Desc""); variables_map vm; store(parse_config_file(argv[1], desc), vm); notify(vm); } catch (error &e) { std::cerr << ""Error: "" << e.what() << std::endl; return 1; } std::cerr << ""Everything fine"" << std::endl; return 0; } }}} {{{ $ ./a.out some-non-existent-file Error: can not read options configuration file 'some-non-existent-file' $ ./a.out . Everything fine }}}" Bugs new To Be Determined program_options Boost Release Branch Problem