Details
-
Type:
Bug
-
Status: Resolved
-
Priority:
P4
-
Resolution: Fixed
-
Affects Version/s: 15
-
Fix Version/s: 15
-
Component/s: client-libs
-
Subcomponent:
-
Resolved In Build:b19
-
OS:windows
Backports
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8278457 | 13.0.10 | Sergey Bylokhov | P4 | Resolved | Fixed | b04 |
JDK-8270486 | 11.0.13-oracle | Pankaj Bansal | P4 | Resolved | Fixed | b03 |
JDK-8254634 | 11.0.12 | Monica Beckwith | P4 | Resolved | Fixed | b04 |
Description
I tried to build OpenJDK with VS 2019 (version 16.5.0), but it failed as below (I have my laptop with Japanese locale only, sorry):
```
c:\progra~2\micros~4\2019\profes~1\vc\tools\msvc\1425~1.286\include\cstdlib(46): error C2039: 'Do_Not_Use_calloc_Use_safe_Calloc_Instead': '`global namespace'' のメンバーではありません
c:\progra~2\micros~4\2019\profes~1\vc\tools\msvc\1425~1.286\include\cstdlib(46): error C2873: 'Do_Not_Use_calloc_Use_safe_Calloc_Instead': シンボルを using 宣言の中で使用することはできません。
c:\progra~2\micros~4\2019\profes~1\vc\tools\msvc\1425~1.286\include\cstdlib(52): error C2039: 'Do_Not_Use_malloc_Use_safe_Malloc_Instead': '`global namespace'' のメンバーではありません
c:\progra~2\micros~4\2019\profes~1\vc\tools\msvc\1425~1.286\include\cstdlib(52): error C2873: 'Do_Not_Use_malloc_Use_safe_Malloc_Instead': シンボルを using 宣言の中で使用することはできません。
c:\progra~2\micros~4\2019\profes~1\vc\tools\msvc\1425~1.286\include\cstdlib(58): error C2039: 'Do_Not_Use_realloc_Use_safe_Realloc_Instead': '`global namespace'' のメンバーではありません
c:\progra~2\micros~4\2019\profes~1\vc\tools\msvc\1425~1.286\include\cstdlib(58): error C2873: 'Do_Not_Use_realloc_Use_safe_Realloc_Instead': シンボルを using 宣言の中で使用することはできません。
```
alloc.h defines malloc / calloc / realloc to undeclared value not for using them. They seem to affect to C++ runtime internal call (in cstdlib).
We have to tweak order of including header files.
```
c:\progra~2\micros~4\2019\profes~1\vc\tools\msvc\1425~1.286\include\cstdlib(46): error C2039: 'Do_Not_Use_calloc_Use_safe_Calloc_Instead': '`global namespace'' のメンバーではありません
c:\progra~2\micros~4\2019\profes~1\vc\tools\msvc\1425~1.286\include\cstdlib(46): error C2873: 'Do_Not_Use_calloc_Use_safe_Calloc_Instead': シンボルを using 宣言の中で使用することはできません。
c:\progra~2\micros~4\2019\profes~1\vc\tools\msvc\1425~1.286\include\cstdlib(52): error C2039: 'Do_Not_Use_malloc_Use_safe_Malloc_Instead': '`global namespace'' のメンバーではありません
c:\progra~2\micros~4\2019\profes~1\vc\tools\msvc\1425~1.286\include\cstdlib(52): error C2873: 'Do_Not_Use_malloc_Use_safe_Malloc_Instead': シンボルを using 宣言の中で使用することはできません。
c:\progra~2\micros~4\2019\profes~1\vc\tools\msvc\1425~1.286\include\cstdlib(58): error C2039: 'Do_Not_Use_realloc_Use_safe_Realloc_Instead': '`global namespace'' のメンバーではありません
c:\progra~2\micros~4\2019\profes~1\vc\tools\msvc\1425~1.286\include\cstdlib(58): error C2873: 'Do_Not_Use_realloc_Use_safe_Realloc_Instead': シンボルを using 宣言の中で使用することはできません。
```
alloc.h defines malloc / calloc / realloc to undeclared value not for using them. They seem to affect to C++ runtime internal call (in cstdlib).
We have to tweak order of including header files.
Attachments
Issue Links
- backported by
-
JDK-8254634 Build failure with VS 2019 (16.5.0) due to C2039 and C2873
-
- Resolved
-
-
JDK-8270486 Build failure with VS 2019 (16.5.0) due to C2039 and C2873
-
- Resolved
-
-
JDK-8278457 Build failure with VS 2019 (16.5.0) due to C2039 and C2873
-
- Resolved
-