JDK-8161951 : 8132379 introduced non ANSI C coding
  • Type: Bug
  • Component: tools
  • Sub-Component: launcher
  • Affected Version: 9
  • Priority: P4
  • Status: Closed
  • Resolution: Fixed
  • Submitted: 2016-07-20
  • Updated: 2016-07-29
  • Resolved: 2016-07-21
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 9
9 b129Fixed
Related Reports
Relates :  
Description
Change '8132379: -J options can cause crash or "Warning: app args parsing error passing arguments as-is"' uses the following non ANSI C compatible code for declaring a block-level variable:

    for (i = 0; i < argc; i++) {
        j = appArgIdx[i];
        jboolean arg_expand = (JLI_StrCmp(stdargs[j].arg, strv[i]) == 0)
                                ? stdargs[j].has_wildcard
                                : JNI_FALSE;
But ANSI C only allows the declaration of block local variable at the beginning of a block.

As the fix is trivial, it makes no sense to restrict ourselves to compilers which support this C99 feature (like VS2013).