id summary reporter owner description type status milestone component version severity resolution keywords cc 545 Program_options: Fails to parse options with a common root rleigh Vladimir Prus "{{{ Given the following testcase: #include #include namespace opt = boost::program_options; int main(int argc, char *argv[]) { try { bool all, all_chroots, all_sessions; opt::options_description chroot(""Chroot selection""); chroot.add_options() (""all,a"", ""Select all chroots and active sessions"") (""all-chroots"", ""Select all chroots"") (""all-sessions"", ""Select all active sessions""); opt::variables_map vm; opt::store(opt::parse_command_line(argc, argv, chroot), vm); opt::notify(vm); if (vm.count(""all"")) all = true; if (vm.count(""all-chroots"")) all_chroots = true; if (vm.count(""all-sessions"")) all_sessions = true; return 0; } catch (std::exception const& e) { std::cerr << e.what() << std::endl; return 1; } } $ g++ -o opt opt.cc -lboost_program_options $ ./opt --help unknown option help $ ./opt --all-chroots $ ./opt --all-sessions $ ./opt --all ambiguous option all --all is not abiguous, since it's an exact match. It's not ambigous for GNU getopt or GLib GOption, so this is IMHO a bug. Regards, Roger ii libboost-dev 1.33.0-6 Boost C++ Libraries development fi ii libboost-program-options1.33. 1.33.0-6 program options library for C++ }}}" Bugs closed Boost 1.44.0 program_options Boost Development Trunk Problem fixed