Boost C++ Libraries: Ticket #4040: Program Options has issues with options that support multiple tokens when using multiple parsers https://svn.boost.org/trac10/ticket/4040 <p> If you have an option that allows multiple tokens and give that option at both command line and config file, only the tokens listed on the command line are saved. </p> <p> I fixed this issue by changing: </p> <pre class="wiki"> // If option has final value, skip this assignment if (xm.m_final.count(name)) continue; const option_description&amp; d = desc.find(name, false, false, false); </pre><p> to: </p> <pre class="wiki"> const option_description&amp; d = desc.find(name, false, false, false); // If option has final value, skip this assignment if ((xm.m_final.count(name)) &amp;&amp; (d.semantic()-&gt;max_tokens() &lt;= 1)) continue; </pre><p> in boost::program_options::store() function in the file boost/libs/program_options/src/variables_map.cpp. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/4040 Trac 1.4.3