On Thu, 8 Oct 2020 20:28:33 GMT, Bernhard Urban-Forster <bur...@openjdk.org> wrote:
>> I organized this PR so that each commit contains the warning emitted by MSVC >> as commit message and its relevant fix. >> >> Verified on >> * Linux+ARM64: `{hotspot,jdk,langtools}:tier1`, no failures. >> * Windows+ARM64: `{hotspot,jdk,langtools}:tier1`, no (new) failures. >> * internal macOS+ARM64 port: build without `--disable-warnings-as-errors` >> still works. Just mentioning this here, because >> it's yet another toolchain (Xcode / clang) that needs to be kept happy >> [going >> forward](https://openjdk.java.net/jeps/391). > > Bernhard Urban-Forster has updated the pull request with a new target base > due to a merge or a rebase. The pull request > now contains 18 commits: > - Merge remote-tracking branch 'upstream/master' into > 8254072-fix-windows-arm64-warnings > - ./src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp(1441): warning C4267: > 'argument': conversion from 'size_t' to > 'int', possible loss of data > ./src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp(1446): warning C4267: > 'argument': conversion from 'size_t' to > 'int', possible loss of data > ./src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp(1654): warning C4267: > 'argument': > conversion from 'size_t' to 'int', possible loss of data > - Revert changes for "warning C4146: unary minus operator applied to > unsigned type, result still unsigned" > - msvc: disable unary minus warning for unsigned types > - ./src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp(1123): > warning C4267: 'initializing': conversion > from 'size_t' to 'int', possible loss of data > ./src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp(1123): > warning C4267: 'initializing': conversion > from 'size_t' to 'const int', possible loss of data > - ./src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp(1312): warning C4267: > 'argument': conversion from 'size_t' to > 'unsigned int', possible loss of data > ./src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp(1370): warning C4267: > 'argument': conversion from 'size_t' to > 'int', possible loss of data > ./src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp(1441): warning C4146: > unary minus > operator applied to unsigned type, result still unsigned > ./src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp(1441): > warning C4267: 'argument': conversion from 'size_t' to 'int', possible > loss of data > - ./src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp(2472): warning C4312: > 'type cast': conversion from 'unsigned int' > to 'address' of greater size > - ./src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp(1527): warning C4267: > 'argument': conversion from 'size_t' to > 'int', possible loss of data > - ./src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp(2901): warning C4267: > 'initializing': conversion from 'size_t' to > 'int', possible loss of data > ./src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp(2901): warning C4267: > 'initializing': conversion from 'size_t' to > 'const int', possible loss of data > - ./src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp(2756): warning C4146: > unary minus operator applied to unsigned > type, result still unsigned > - ... and 8 more: > https://git.openjdk.java.net/jdk/compare/5351ba6c...a081dfb4 Changes requested by ihse (Reviewer). make/autoconf/flags-cflags.m4 line 137: > 135: WARNINGS_ENABLE_ALL="-W3" > 136: DISABLED_WARNINGS="4800" > 137: DISABLED_WARNINGS+=" 4146" # unary minus operator applied to > unsigned type, result still unsigned This change will affect *all* JDK code. I'm not sure this was intended? If it was intended, I think you need to motivate this more explicitly. If you only wanted to disable the warning for hotspot, the proper solution would be to add it to DISABLED_WARNINGS_microsoft in make/hotspot/lib/CompileJvm.gmk. ------------- PR: https://git.openjdk.java.net/jdk/pull/530