[ 
https://issues.apache.org/jira/browse/QPID-6718?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14725941#comment-14725941
 ] 

Andrew Stitcher commented on QPID-6718:
---------------------------------------

The 'l"/'L' suffix isn't accepted by the parser, but only after it tokenises 
and tries to parse what comes before.

It turns out that 9223372036854775807 is accepted as a valid numeric, but 
-9223372036854775808 is not (this is a feature of the internals of the 
lexical_cast implementation which probably uses the streaming operators 
("<<"/">>") under the covers).

There are other bits of necessary syntax too (which are not supported by 
lexical_cast as far as I know - "0b"/"0B" prefix for binary numbers, and most 
significantly treating underscore ('_') as a separator character in exact 
numeric literals.

There seem to be some approx numeric syntax pieces missing too - hex floating 
point and 'f'/'F'/'d'/'D' suffixes.

> parsing errors for integer literals in selectors
> ------------------------------------------------
>
>                 Key: QPID-6718
>                 URL: https://issues.apache.org/jira/browse/QPID-6718
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Client
>    Affects Versions: qpid-cpp-0.34
>            Reporter: Gordon Sim
>            Assignee: Andrew Stitcher
>            Priority: Minor
>
> There are a few integer literals that cause selector parsing to fail or the 
> resulting evaluation to be incorrect:
> (a) hexadecimal literals don't seem to be recognised, e.g. 0xFF will result 
> in a parse error
> (b) octal literals are evaluated as decimal e.g 077 is interpreted as decimal 
> 77 rather than decimal 63
> (c) large numbers fail with a lexical cast error, e.g -9223372036854775808L 
> or 9223372036854775807L



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to