[ https://issues.apache.org/jira/browse/QPID-3206?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13019507#comment-13019507 ]
jirapos...@reviews.apache.org commented on QPID-3206: ----------------------------------------------------- ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/596/#review456 ----------------------------------------------------------- /trunk/qpid/cpp/src/qpid/types/Variant.cpp <https://reviews.apache.org/r/596/#comment883> good point. - Andrew On 2011-04-13 17:53:50, Gordon Sim wrote: bq. bq. ----------------------------------------------------------- bq. This is an automatically generated e-mail. To reply, visit: bq. https://reviews.apache.org/r/596/ bq. ----------------------------------------------------------- bq. bq. (Updated 2011-04-13 17:53:50) bq. bq. bq. Review request for Andrew Stitcher, Alan Conway, Kenneth Giusti, Ted Ross, and Steve Huston. bq. bq. bq. Summary bq. ------- bq. bq. Add special test for negative numeric strings when converting to unsigned values. (It appears - though I could be wrong - that in basic form stringstream does not do any special handling of negatives for different locales. That appears only to be done for money values.) bq. bq. bq. This addresses bug QPID-3206. bq. https://issues.apache.org/jira/browse/QPID-3206 bq. bq. bq. Diffs bq. ----- bq. bq. /trunk/qpid/cpp/src/qpid/types/Variant.cpp 1090157 bq. /trunk/qpid/cpp/src/tests/Variant.cpp 1090157 bq. bq. Diff: https://reviews.apache.org/r/596/diff bq. bq. bq. Testing bq. ------- bq. bq. New tests included in patch bq. bq. bq. Thanks, bq. bq. Gordon bq. bq. > Variant converts from negative number in string format to unsigned integer > without error > ---------------------------------------------------------------------------------------- > > Key: QPID-3206 > URL: https://issues.apache.org/jira/browse/QPID-3206 > Project: Qpid > Issue Type: Bug > Components: C++ Broker, C++ Client > Affects Versions: 0.8, 0.10 > Reporter: Gordon Sim > Assignee: Gordon Sim > Fix For: 0.11 > > > E.g. > uint16_t i = 0; > qpid::types::Variant v = "-5"; > i = v; > The above results in an exception in older versions of gcc (e.g. 4.1.2) but > sets i to 65531 on later versions (e.g. 4.4.4). This is a result of a fix to > the gcc std library to be compliant with specification which requires > stringstream to accept negative values even for unsigned ints (which is the > behaviour of scanf). > See e.g: > http://boost.2283326.n4.nabble.com/conversion-lexical-cast-doesn-t-throw-td2593967.html > http://groups.google.com/group/comp.lang.c++.moderated/browse_thread/thread/97475b21515462c9/ce369a327fa39243#ce369a327fa39243 -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:dev-subscr...@qpid.apache.org