
Hi all, program_options does not accept NaN or Inf as valid double input. For example, the following sequence modifies the "Getting Started" first.cpp [1] to accept double input: cp $BOOST_SOURCE/libs/program_options/example/first.cpp . perl -pi -e 's/<int>/<double>/;' first.cpp LDFLAGS="-lboost_program_options" make first # ...or whatever The modified example indeed barfs on NaN or Inf input: $ ./first --compression=5.5 Compression level was set to 5.5. $ ./first --compression=Inf error: in option 'compression': invalid option value 'Inf' $ ./first --compression=NaN error: in option 'compression': invalid option value 'NaN' Two questions: 1) Does this count as a bug? 'std::cin >> foo' doesn't grok Inf or NaNs (on my system anyhow) but methods like strtod() do. Users providing explicit infinities or not-a-numbers as options parameters likely don't do so accidentally. This Inf/NaN behavior is not mentioned in the active tickets. 2) Can anyone suggest a workaround (shy of using string-based parameters and calling strtod myself)? Thanks, Rhys [1] http://www.boost.org/doc/libs/1_47_0/doc/html/program_options/tutorial.html#...