https://issues.dlang.org/show_bug.cgi?id=23712

Iain Buclaw <ibuc...@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ibuc...@gdcproject.org

--- Comment #2 from Iain Buclaw <ibuc...@gdcproject.org> ---
(In reply to Walter Bright from comment #1)
> Shouldn't it be promoted to a long, rather than an unsigned?
That is certainly what our parser does as this is how D works.

Seems that it is undefined behaviour in C, as the test fails under gcc, but
passes for clang.

https://godbolt.org/z/3hnjzMhfM

Should we add a `u` suffix to that literal? Probably, as I'm not comfortable us
testing undefined behaviour in the testsuite - even though it is *precisely
defined* for us in the D parser.

Maybe just document that we have a deterministic way of interpreting ambiguous
integer literals in ImportC and be done with it.

--

Reply via email to