JDK-8324865 : windows-x64-slowdebug still does not build after JDK-8324840
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 23
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • OS: windows
  • CPU: x86_64
  • Submitted: 2024-01-29
  • Updated: 2024-07-02
  • Resolved: 2024-01-30
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 23
23 b08Fixed
Related Reports
Relates :  
Relates :  
Description
The fix for the following bug:

JDK-8324840 windows-x64-slowdebug does not build anymore after JDK-8317572

is integrated in jdk-23+8-518. 

However Mach5 Tier2 (where slowdebug build happen) still fails with: 

[2024-01-29T15:13:06,020Z] Creating support/native/java.desktop/libjsound/static/jsound.lib from 17 file(s) 
[2024-01-29T15:19:09,151Z] c:\sb\prod\1706540623\workspace\open\src\hotspot\share\utilities/stringUtils.hpp(67): error C3861: 'strtok_r': identifier not found 
[2024-01-29T15:19:09,151Z] c:\sb\prod\1706540623\workspace\open\src\hotspot\share\utilities/stringUtils.hpp(75): error C3861: 'strtok_r': identifier not found 
[2024-01-29T15:19:09,167Z] lib/CompileJvm.gmk:152: recipe for target '/cygdrive/c/sb/prod/1706540623/workspace/build/windows-x64-slowdebug/hotspot/variant-server/libjvm/objs/static/logLevel.obj' failed 
[2024-01-29T15:19:09,167Z] make[3]: *** [/cygdrive/c/sb/prod/1706540623/workspace/build/windows-x64-slowdebug/hotspot/variant-server/libjvm/objs/static/logLevel.obj] Error 1 
[2024-01-29T15:19:09,167Z] make[3]: *** Waiting for unfinished jobs.... 
[2024-01-29T15:19:10,558Z] c:\sb\prod\1706540623\workspace\open\src\hotspot\share\utilities/stringUtils.hpp(67): error C3861: 'strtok_r': identifier not found 
[2024-01-29T15:19:10,558Z] c:\sb\prod\1706540623\workspace\open\src\hotspot\share\utilities/stringUtils.hpp(75): error C3861: 'strtok_r': identifier not found 
[2024-01-29T15:19:10,558Z] make[3]: *** [/cygdrive/c/sb/prod/1706540623/workspace/build/windows-x64-slowdebug/hotspot/variant-server/libjvm/objs/logLevel.obj] Error 1 
[2024-01-29T15:19:10,558Z] lib/CompileJvm.gmk:152: recipe for target '/cygdrive/c/sb/prod/1706540623/workspace/build/windows-x64-slowdebug/hotspot/variant-server/libjvm/objs/logLevel.obj' failed 
[2024-01-29T15:19:10,558Z] make[3]: *** Waiting for unfinished jobs.... 
[2024-01-29T15:19:11,761Z] make/Main.gmk:261: recipe for target 'hotspot-server-static-libs' failed 
[2024-01-29T15:19:11,761Z] make[2]: *** [hotspot-server-static-libs] Error 2
Comments
As we see no build failures anymore, I consider this verified.
02-07-2024

ILW = Same as JDK-8324840 = P2
30-01-2024

Changeset: b6d364ad Author: Vladimir Kozlov <kvn@openjdk.org> Date: 2024-01-30 01:08:18 +0000 URL: https://git.openjdk.org/jdk/commit/b6d364ad88ca0e554a47ef7daba03bb07fd95b01
30-01-2024

A pull request was submitted for review. URL: https://git.openjdk.org/jdk/pull/17622 Date: 2024-01-29 22:38:27 +0000
29-01-2024

Including os.hpp will increase compilation time for all files which inclide "stringUtils.hpp". I suggest to move code from .hpp to .cpp file. It is used only by c2 and inlining of this code is not too important. And existing includes in stringUtils.cpp could be enough to resolve strtok_r.
29-01-2024

[~jwaters] commented in the PR that on windows we have strtok_s instead of strtok_r. So we may need to #include "runtime/os.hpp" instead of <string.hpp> or use strtok_s as Julian suggested.
29-01-2024