RFR(S): JDK-8181503 "Can't compile hotspot with c++11"
Gerard Ziemski
gerard.ziemski at oracle.com
Wed Jan 31 15:35:20 UTC 2018
> On Jan 31, 2018, at 1:46 AM, Thomas Stüfe <thomas.stuefe at gmail.com> wrote:
>
>
>
> On Wed, Jan 31, 2018 at 2:07 AM, David Holmes <david.holmes at oracle.com> wrote:
> Hi Gerard,
>
> These seem okay.
>
> I'm a little surprised that the LogConfiguration change doesn't cause complaints about passing true/false as int ??
>
> And I second Coleen's query re the VMError codes - there seems to be no reason for their strange values. They were added by JDK-4965918.
>
>
>
> They look Windows-ish, like someone wanted them to mimic SEH codes - like someone took them directly from the examples here: https://msdn.microsoft.com/en-us/library/het71c37.aspx.
>
> They bothered us for some reason I do not really remember anymore, so in our port they long have had different values, with no adverse effects.
Based on the comments from vmError.hpp:
static int _id; // Solaris/Linux signals: 0 - SIGRTMAX
// Windows exceptions: 0xCxxxxxxx system errors
// 0x8xxxxxxx system warnings
There seems to be ranges of errors on Windows that are used by the OS, so I’m guessing we chose a range that seemed free: https://msdn.microsoft.com/en-us/library/windows/desktop/ms681381(v=vs.85).aspx
> On Jan 30, 2018, at 4:53 PM, coleen.phillimore at oracle.com wrote:
>
>
> Why are these defined with these odd values anyway? why not define as 0, 1 and 2? Or do they map to some Windows error values?
>
> thanks,
> Coleen
0,1,2 seem to be taken by the OS, on Windows see: https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382(v=vs.85).aspx, and Linux, BSD see: http://man7.org/linux/man-pages/man7/signal.7.html, so it seems we wanted unique error codes that could not be mistaken for system errors or signals.
cheers
More information about the hotspot-runtime-dev
mailing list