RFR(XS): 8168490: Use the LL/ULL suffixes to define 64-bit integer literals on Windows

David Holmes david.holmes at oracle.com
Mon Oct 24 00:43:19 UTC 2016


Hi Volker,

On 22/10/2016 1:35 AM, Volker Simonis wrote:
> Hi,
>
> can I please have a review and sponsor for the following trivial fix:
>
> http://cr.openjdk.java.net/~simonis/webrevs/2016/8168490/
> https://bugs.openjdk.java.net/browse/JDK-8168490
>
> Currently we use the i64/ui64 suffixes to declare 64-bit integer
> literals on Windows (see
> src/share/vm/utilities/globalDefinitions_visCPP.hpp).
>
> Unfortunately this suffix is not known to Eclipse so most of a hotspot
> files have errors in an Eclipse project (e.g. NULL is defined as
> '0i64' which gives a syntax error in Eclipse, but NULL is used in most
> hotspot of the source files).
>
> Fortunately VS supports the more standard conforming LL/ULL suffixes
> (see http://en.cppreference.com/w/cpp/language/integer_literal) since
> at least VS2010 (see
> https://msdn.microsoft.com/en-us/library/00a1awxf(v=vs.100).aspx).I
> therefore propose to change the suffix for integer literals from
> i64/ui64 to LL/ULL on Windows.

In the sense that this changes the VIS specific code to use a more stand 
conforming form this seems fine.

But as I wrote in the bug report, should we even be using this file with 
non Visual Studio compilers?

Thanks,
David

> Thank you and best regards,
> Volker
>


More information about the hotspot-dev mailing list