--- old/common/autoconf/generated-configure.sh 2015-12-16 21:11:13.437735192 +0100 +++ new/common/autoconf/generated-configure.sh 2015-12-16 21:11:13.293735190 +0100 @@ -4727,7 +4727,7 @@ ################################################################################ # The order of these defines the priority by which we try to find them. -VALID_VS_VERSIONS="2013 2012 2010" +VALID_VS_VERSIONS="2015 2013 2012 2010" VS_DESCRIPTION_2010="Microsoft Visual Studio 2010" VS_VERSION_INTERNAL_2010=100 @@ -4760,6 +4760,16 @@ VS_VS_PLATFORM_NAME_2013="v120" VS_SDK_PLATFORM_NAME_2013= +VS_DESCRIPTION_2015="Microsoft Visual Studio 2015" +VS_VERSION_INTERNAL_2015=140 +VS_MSVCR_2015=vcruntime140.dll +VS_MSVCP_2015=msvcp140.dll +VS_ENVVAR_2015="VS140COMNTOOLS" +VS_VS_INSTALLDIR_2015="Microsoft Visual Studio 14.0" +VS_SDK_INSTALLDIR_2015= +VS_VS_PLATFORM_NAME_2015="v140" +VS_SDK_PLATFORM_NAME_2015= + ################################################################################ @@ -4801,7 +4811,7 @@ #CUSTOM_AUTOCONF_INCLUDE # Do not change or remove the following line, it is needed for consistency checks: -DATE_WHEN_GENERATED=1450277321 +DATE_WHEN_GENERATED=1450296077 ############################################################################### # @@ -30176,7 +30186,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 @@ -30215,7 +30225,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 @@ -30271,7 +30281,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 @@ -30312,7 +30322,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 @@ -30355,7 +30365,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 @@ -30395,7 +30405,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 @@ -30434,7 +30444,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 --- old/common/autoconf/toolchain_windows.m4 2015-12-16 21:11:14.345735207 +0100 +++ new/common/autoconf/toolchain_windows.m4 2015-12-16 21:11:14.253735205 +0100 @@ -25,7 +25,7 @@ ################################################################################ # The order of these defines the priority by which we try to find them. -VALID_VS_VERSIONS="2013 2012 2010" +VALID_VS_VERSIONS="2015 2013 2012 2010" VS_DESCRIPTION_2010="Microsoft Visual Studio 2010" VS_VERSION_INTERNAL_2010=100 @@ -58,6 +58,16 @@ VS_VS_PLATFORM_NAME_2013="v120" VS_SDK_PLATFORM_NAME_2013= +VS_DESCRIPTION_2015="Microsoft Visual Studio 2015" +VS_VERSION_INTERNAL_2015=140 +VS_MSVCR_2015=vcruntime140.dll +VS_MSVCP_2015=msvcp140.dll +VS_ENVVAR_2015="VS140COMNTOOLS" +VS_VS_INSTALLDIR_2015="Microsoft Visual Studio 14.0" +VS_SDK_INSTALLDIR_2015= +VS_VS_PLATFORM_NAME_2015="v140" +VS_SDK_PLATFORM_NAME_2015= + ################################################################################ AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT], @@ -79,7 +89,7 @@ AC_MSG_NOTICE([Found Visual Studio installation at $VS_BASE using $METHOD]) VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else AC_MSG_NOTICE([Found Visual Studio installation at $VS_BASE using $METHOD]) --- old/closed/autoconf/generated-configure.sh 2015-12-16 21:11:14.757735213 +0100 +++ new/closed/autoconf/generated-configure.sh 2015-12-16 21:11:14.629735211 +0100 @@ -4918,7 +4918,7 @@ ################################################################################ # The order of these defines the priority by which we try to find them. -VALID_VS_VERSIONS="2013 2012 2010" +VALID_VS_VERSIONS="2015 2013 2012 2010" VS_DESCRIPTION_2010="Microsoft Visual Studio 2010" VS_VERSION_INTERNAL_2010=100 @@ -4951,6 +4951,16 @@ VS_VS_PLATFORM_NAME_2013="v120" VS_SDK_PLATFORM_NAME_2013= +VS_DESCRIPTION_2015="Microsoft Visual Studio 2015" +VS_VERSION_INTERNAL_2015=140 +VS_MSVCR_2015=vcruntime140.dll +VS_MSVCP_2015=msvcp140.dll +VS_ENVVAR_2015="VS140COMNTOOLS" +VS_VS_INSTALLDIR_2015="Microsoft Visual Studio 14.0" +VS_SDK_INSTALLDIR_2015= +VS_VS_PLATFORM_NAME_2015="v140" +VS_SDK_PLATFORM_NAME_2015= + ################################################################################ @@ -5196,7 +5206,7 @@ # Do not change or remove the following line, it is needed for consistency checks: -DATE_WHEN_GENERATED=1450277321 +DATE_WHEN_GENERATED=1450296077 ############################################################################### # @@ -31022,7 +31032,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 @@ -31061,7 +31071,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 @@ -31117,7 +31127,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 @@ -31158,7 +31168,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 @@ -31201,7 +31211,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 @@ -31241,7 +31251,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 @@ -31280,7 +31290,7 @@ $as_echo "$as_me: Found Visual Studio installation at $VS_BASE using $METHOD" >&6;} VS_ENV_CMD="$VS_BASE/$VCVARSFILE" # PLATFORM_TOOLSET is used during the compilation of the freetype sources (see - # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110' or 'v120' for VS 2010, 2012 or VS2013 + # 'LIB_BUILD_FREETYPE' in libraries.m4) and must be one of 'v100', 'v110', 'v120' or 'v140' for VS 2010, 2012, 2013 or VS2015 eval PLATFORM_TOOLSET="\${VS_VS_PLATFORM_NAME_${VS_VERSION}}" else { $as_echo "$as_me:${as_lineno-$LINENO}: Found Visual Studio installation at $VS_BASE using $METHOD" >&5 --- old/hotspot/agent/src/os/win32/windbg/sawindbg.cpp 2015-12-16 21:11:15.761735229 +0100 +++ new/hotspot/agent/src/os/win32/windbg/sawindbg.cpp 2015-12-16 21:11:15.641735227 +0100 @@ -25,6 +25,11 @@ // Disable CRT security warning against strcpy/strcat #pragma warning(disable: 4996) +#if _MSC_VER >= 1900 +// typedef ignored on left when no variable is declared +#pragma warning(disable: 4091) +#endif + // this is source code windbg based SA debugger agent to debug // Dr. Watson dump files and process snapshots. --- old/hotspot/agent/src/share/native/sadis.c 2015-12-16 21:11:16.169735236 +0100 +++ new/hotspot/agent/src/share/native/sadis.c 2015-12-16 21:11:16.057735234 +0100 @@ -93,7 +93,7 @@ { /* C runtime error that has no corresponding DOS error code */ strerror_s(buf, len, errno); - return strlen(buf); + return (int)strlen(buf); } return 0; } --- old/hotspot/make/openjdk_distro 2015-12-16 21:11:16.569735242 +0100 +++ new/hotspot/make/openjdk_distro 2015-12-16 21:11:16.457735240 +0100 @@ -28,5 +28,5 @@ # Don't put quotes (fail windows build). HOTSPOT_VM_DISTRO=OpenJDK -COMPANY_NAME= +COMPANY_NAME=N/A PRODUCT_NAME=OpenJDK --- old/hotspot/src/os/windows/vm/decoder_windows.hpp 2015-12-16 21:11:16.973735248 +0100 +++ new/hotspot/src/os/windows/vm/decoder_windows.hpp 2015-12-16 21:11:16.857735247 +0100 @@ -26,6 +26,9 @@ #define OS_WINDOWS_VM_DECIDER_WINDOWS_HPP #include +#if _MSC_VER >= 1900 +#pragma warning( disable : 4091 ) // typedef ignored on left when no variable is declared +#endif #include #include "utilities/decoder.hpp" --- old/hotspot/src/os/windows/vm/os_windows.cpp 2015-12-16 21:11:17.401735255 +0100 +++ new/hotspot/src/os/windows/vm/os_windows.cpp 2015-12-16 21:11:17.281735253 +0100 @@ -92,6 +92,9 @@ #include #include #include // For _beginthreadex(), _endthreadex() +#if _MSC_VER >= 1900 +#pragma warning( disable : 4091 ) // typedef ignored on left when no variable is declared +#endif #include // For os::dll_address_to_function_name // for enumerating dll libraries #include @@ -2221,7 +2224,11 @@ // Windows Vista/2008 heap corruption check #define EXCEPTION_HEAP_CORRUPTION 0xC0000374 +#if _MSC_VER >= 1900 +#define def_excpt(val) #val, (int) val +#else #define def_excpt(val) #val, val +#endif struct siglabel { char *name; --- old/hotspot/src/share/vm/adlc/arena.cpp 2015-12-16 21:11:17.885735263 +0100 +++ new/hotspot/src/share/vm/adlc/arena.cpp 2015-12-16 21:11:17.769735261 +0100 @@ -28,6 +28,10 @@ return CHeapObj::operator new(requested_size + length); } +void Chunk::operator delete(void* p) { + CHeapObj::operator delete(p); +} + void Chunk::operator delete(void* p, size_t length) { CHeapObj::operator delete(p); } --- old/hotspot/src/share/vm/adlc/arena.hpp 2015-12-16 21:11:18.293735269 +0100 +++ new/hotspot/src/share/vm/adlc/arena.hpp 2015-12-16 21:11:18.177735268 +0100 @@ -71,6 +71,9 @@ class Chunk: public CHeapObj { public: void* operator new(size_t size, size_t length) throw(); + // Usual (non-placement) deallocation function to allow placement delete use size_t + // See 3.7.4.2 [basic.stc.dynamic.deallocation] paragraph 2. + void operator delete(void* p); void operator delete(void* p, size_t length); Chunk(size_t length); --- old/hotspot/src/share/vm/jvmci/jvmciCompilerToVM.cpp 2015-12-16 21:11:18.721735276 +0100 +++ new/hotspot/src/share/vm/jvmci/jvmciCompilerToVM.cpp 2015-12-16 21:11:18.605735274 +0100 @@ -1353,67 +1353,66 @@ #define METASPACE_METHOD_DATA "J" JNINativeMethod CompilerToVM::methods[] = { - {CC"getBytecode", CC"("HS_RESOLVED_METHOD")[B", FN_PTR(getBytecode)}, - {CC"getExceptionTableStart", CC"("HS_RESOLVED_METHOD")J", FN_PTR(getExceptionTableStart)}, - {CC"getExceptionTableLength", CC"("HS_RESOLVED_METHOD")I", FN_PTR(getExceptionTableLength)}, - {CC"findUniqueConcreteMethod", CC"("HS_RESOLVED_KLASS HS_RESOLVED_METHOD")"HS_RESOLVED_METHOD, FN_PTR(findUniqueConcreteMethod)}, - {CC"getImplementor", CC"("HS_RESOLVED_KLASS")"HS_RESOLVED_KLASS, FN_PTR(getImplementor)}, - {CC"getStackTraceElement", CC"("HS_RESOLVED_METHOD"I)"STACK_TRACE_ELEMENT, FN_PTR(getStackTraceElement)}, - {CC"methodIsIgnoredBySecurityStackWalk", CC"("HS_RESOLVED_METHOD")Z", FN_PTR(methodIsIgnoredBySecurityStackWalk)}, - {CC"doNotInlineOrCompile", CC"("HS_RESOLVED_METHOD")V", FN_PTR(doNotInlineOrCompile)}, - {CC"canInlineMethod", CC"("HS_RESOLVED_METHOD")Z", FN_PTR(canInlineMethod)}, - {CC"shouldInlineMethod", CC"("HS_RESOLVED_METHOD")Z", FN_PTR(shouldInlineMethod)}, - {CC"lookupType", CC"("STRING CLASS"Z)"HS_RESOLVED_KLASS, FN_PTR(lookupType)}, - {CC"lookupNameInPool", CC"("HS_CONSTANT_POOL"I)"STRING, FN_PTR(lookupNameInPool)}, - {CC"lookupNameAndTypeRefIndexInPool", CC"("HS_CONSTANT_POOL"I)I", FN_PTR(lookupNameAndTypeRefIndexInPool)}, - {CC"lookupSignatureInPool", CC"("HS_CONSTANT_POOL"I)"STRING, FN_PTR(lookupSignatureInPool)}, - {CC"lookupKlassRefIndexInPool", CC"("HS_CONSTANT_POOL"I)I", FN_PTR(lookupKlassRefIndexInPool)}, - {CC"lookupKlassInPool", CC"("HS_CONSTANT_POOL"I)Ljava/lang/Object;", FN_PTR(lookupKlassInPool)}, - {CC"lookupAppendixInPool", CC"("HS_CONSTANT_POOL"I)"OBJECT, FN_PTR(lookupAppendixInPool)}, - {CC"lookupMethodInPool", CC"("HS_CONSTANT_POOL"IB)"HS_RESOLVED_METHOD, FN_PTR(lookupMethodInPool)}, - {CC"constantPoolRemapInstructionOperandFromCache", CC"("HS_CONSTANT_POOL"I)I", FN_PTR(constantPoolRemapInstructionOperandFromCache)}, - {CC"resolveConstantInPool", CC"("HS_CONSTANT_POOL"I)"OBJECT, FN_PTR(resolveConstantInPool)}, - {CC"resolvePossiblyCachedConstantInPool", CC"("HS_CONSTANT_POOL"I)"OBJECT, FN_PTR(resolvePossiblyCachedConstantInPool)}, - {CC"resolveTypeInPool", CC"("HS_CONSTANT_POOL"I)"HS_RESOLVED_KLASS, FN_PTR(resolveTypeInPool)}, - {CC"resolveFieldInPool", CC"("HS_CONSTANT_POOL"IB[J)"HS_RESOLVED_KLASS, FN_PTR(resolveFieldInPool)}, - {CC"resolveInvokeDynamicInPool", CC"("HS_CONSTANT_POOL"I)V", FN_PTR(resolveInvokeDynamicInPool)}, - {CC"resolveInvokeHandleInPool", CC"("HS_CONSTANT_POOL"I)V", FN_PTR(resolveInvokeHandleInPool)}, - {CC"resolveMethod", CC"("HS_RESOLVED_KLASS HS_RESOLVED_METHOD HS_RESOLVED_KLASS")"HS_RESOLVED_METHOD, FN_PTR(resolveMethod)}, - {CC"getVtableIndexForInterfaceMethod", CC"("HS_RESOLVED_KLASS HS_RESOLVED_METHOD")I", FN_PTR(getVtableIndexForInterfaceMethod)}, - {CC"getClassInitializer", CC"("HS_RESOLVED_KLASS")"HS_RESOLVED_METHOD, FN_PTR(getClassInitializer)}, - {CC"hasFinalizableSubclass", CC"("HS_RESOLVED_KLASS")Z", FN_PTR(hasFinalizableSubclass)}, - {CC"getMaxCallTargetOffset", CC"(J)J", FN_PTR(getMaxCallTargetOffset)}, - {CC"getResolvedJavaMethodAtSlot", CC"("CLASS"I)"HS_RESOLVED_METHOD, FN_PTR(getResolvedJavaMethodAtSlot)}, - {CC"getResolvedJavaMethod", CC"(Ljava/lang/Object;J)"HS_RESOLVED_METHOD, FN_PTR(getResolvedJavaMethod)}, - {CC"getConstantPool", CC"(Ljava/lang/Object;J)"HS_CONSTANT_POOL, FN_PTR(getConstantPool)}, - {CC"getResolvedJavaType", CC"(Ljava/lang/Object;JZ)"HS_RESOLVED_KLASS, FN_PTR(getResolvedJavaType)}, - {CC"initializeConfiguration", CC"("HS_CONFIG")J", FN_PTR(initializeConfiguration)}, - {CC"installCode", CC"("TARGET_DESCRIPTION HS_COMPILED_CODE INSTALLED_CODE HS_SPECULATION_LOG")I", FN_PTR(installCode)}, - {CC"getMetadata", CC"("TARGET_DESCRIPTION HS_COMPILED_CODE HS_METADATA")I", FN_PTR(getMetadata)}, - {CC"notifyCompilationStatistics", CC"(I"HS_RESOLVED_METHOD"ZIJJ"INSTALLED_CODE")V", FN_PTR(notifyCompilationStatistics)}, - {CC"resetCompilationStatistics", CC"()V", FN_PTR(resetCompilationStatistics)}, - {CC"disassembleCodeBlob", CC"("INSTALLED_CODE")"STRING, FN_PTR(disassembleCodeBlob)}, - {CC"executeInstalledCode", CC"(["OBJECT INSTALLED_CODE")"OBJECT, FN_PTR(executeInstalledCode)}, - {CC"getLineNumberTable", CC"("HS_RESOLVED_METHOD")[J", FN_PTR(getLineNumberTable)}, - {CC"getLocalVariableTableStart", CC"("HS_RESOLVED_METHOD")J", FN_PTR(getLocalVariableTableStart)}, - {CC"getLocalVariableTableLength", CC"("HS_RESOLVED_METHOD")I", FN_PTR(getLocalVariableTableLength)}, - {CC"reprofile", CC"("HS_RESOLVED_METHOD")V", FN_PTR(reprofile)}, - {CC"invalidateInstalledCode", CC"("INSTALLED_CODE")V", FN_PTR(invalidateInstalledCode)}, - {CC"readUncompressedOop", CC"(J)"OBJECT, FN_PTR(readUncompressedOop)}, - {CC"collectCounters", CC"()[J", FN_PTR(collectCounters)}, - {CC"allocateCompileId", CC"("HS_RESOLVED_METHOD"I)I", FN_PTR(allocateCompileId)}, - {CC"isMature", CC"("METASPACE_METHOD_DATA")Z", FN_PTR(isMature)}, - {CC"hasCompiledCodeForOSR", CC"("HS_RESOLVED_METHOD"II)Z", FN_PTR(hasCompiledCodeForOSR)}, - {CC"getSymbol", CC"(J)"STRING, FN_PTR(getSymbol)}, - {CC"getNextStackFrame", CC"("HS_STACK_FRAME_REF "["RESOLVED_METHOD"I)"HS_STACK_FRAME_REF, FN_PTR(getNextStackFrame)}, - {CC"materializeVirtualObjects", CC"("HS_STACK_FRAME_REF"Z)V", FN_PTR(materializeVirtualObjects)}, - {CC"shouldDebugNonSafepoints", CC"()Z", FN_PTR(shouldDebugNonSafepoints)}, - {CC"writeDebugOutput", CC"([BII)V", FN_PTR(writeDebugOutput)}, - {CC"flushDebugOutput", CC"()V", FN_PTR(flushDebugOutput)}, - {CC"methodDataProfileDataSize", CC"(JI)I", FN_PTR(methodDataProfileDataSize)}, + {CC "getBytecode", CC "(" HS_RESOLVED_METHOD ")[B", FN_PTR(getBytecode)}, + {CC "getExceptionTableStart", CC "(" HS_RESOLVED_METHOD ")J", FN_PTR(getExceptionTableStart)}, + {CC "getExceptionTableLength", CC "(" HS_RESOLVED_METHOD ")I", FN_PTR(getExceptionTableLength)}, + {CC "findUniqueConcreteMethod", CC "(" HS_RESOLVED_KLASS HS_RESOLVED_METHOD ")" HS_RESOLVED_METHOD, FN_PTR(findUniqueConcreteMethod)}, + {CC "getImplementor", CC "(" HS_RESOLVED_KLASS ")" HS_RESOLVED_KLASS, FN_PTR(getImplementor)}, + {CC "getStackTraceElement", CC "(" HS_RESOLVED_METHOD "I)" STACK_TRACE_ELEMENT, FN_PTR(getStackTraceElement)}, + {CC "methodIsIgnoredBySecurityStackWalk", CC "(" HS_RESOLVED_METHOD ")Z", FN_PTR(methodIsIgnoredBySecurityStackWalk)}, + {CC "doNotInlineOrCompile", CC "(" HS_RESOLVED_METHOD ")V", FN_PTR(doNotInlineOrCompile)}, + {CC "canInlineMethod", CC "(" HS_RESOLVED_METHOD ")Z", FN_PTR(canInlineMethod)}, + {CC "shouldInlineMethod", CC "(" HS_RESOLVED_METHOD ")Z", FN_PTR(shouldInlineMethod)}, + {CC "lookupType", CC "(" STRING CLASS "Z)" HS_RESOLVED_KLASS, FN_PTR(lookupType)}, + {CC "lookupNameInPool", CC "(" HS_CONSTANT_POOL "I)" STRING, FN_PTR(lookupNameInPool)}, + {CC "lookupNameAndTypeRefIndexInPool", CC "(" HS_CONSTANT_POOL "I)I", FN_PTR(lookupNameAndTypeRefIndexInPool)}, + {CC "lookupSignatureInPool", CC "(" HS_CONSTANT_POOL "I)" STRING, FN_PTR(lookupSignatureInPool)}, + {CC "lookupKlassRefIndexInPool", CC "(" HS_CONSTANT_POOL "I)I", FN_PTR(lookupKlassRefIndexInPool)}, + {CC "lookupKlassInPool", CC "(" HS_CONSTANT_POOL "I)Ljava/lang/Object;", FN_PTR(lookupKlassInPool)}, + {CC "lookupAppendixInPool", CC "(" HS_CONSTANT_POOL "I)" OBJECT, FN_PTR(lookupAppendixInPool)}, + {CC "lookupMethodInPool", CC "(" HS_CONSTANT_POOL "IB)" HS_RESOLVED_METHOD, FN_PTR(lookupMethodInPool)}, + {CC "constantPoolRemapInstructionOperandFromCache", CC "(" HS_CONSTANT_POOL "I)I", FN_PTR(constantPoolRemapInstructionOperandFromCache)}, + {CC "resolveConstantInPool", CC "(" HS_CONSTANT_POOL "I)" OBJECT, FN_PTR(resolveConstantInPool)}, + {CC "resolvePossiblyCachedConstantInPool", CC "(" HS_CONSTANT_POOL "I)" OBJECT, FN_PTR(resolvePossiblyCachedConstantInPool)}, + {CC "resolveTypeInPool", CC "(" HS_CONSTANT_POOL "I)" HS_RESOLVED_KLASS, FN_PTR(resolveTypeInPool)}, + {CC "resolveFieldInPool", CC "(" HS_CONSTANT_POOL "IB[J)" HS_RESOLVED_KLASS, FN_PTR(resolveFieldInPool)}, + {CC "resolveInvokeDynamicInPool", CC "(" HS_CONSTANT_POOL "I)V", FN_PTR(resolveInvokeDynamicInPool)}, + {CC "resolveInvokeHandleInPool", CC "(" HS_CONSTANT_POOL "I)V", FN_PTR(resolveInvokeHandleInPool)}, + {CC "resolveMethod", CC "(" HS_RESOLVED_KLASS HS_RESOLVED_METHOD HS_RESOLVED_KLASS ")" HS_RESOLVED_METHOD, FN_PTR(resolveMethod)}, + {CC "getVtableIndexForInterfaceMethod", CC "(" HS_RESOLVED_KLASS HS_RESOLVED_METHOD ")I", FN_PTR(getVtableIndexForInterfaceMethod)}, + {CC "getClassInitializer", CC "(" HS_RESOLVED_KLASS ")" HS_RESOLVED_METHOD, FN_PTR(getClassInitializer)}, + {CC "hasFinalizableSubclass", CC "(" HS_RESOLVED_KLASS ")Z", FN_PTR(hasFinalizableSubclass)}, + {CC "getMaxCallTargetOffset", CC "(J)J", FN_PTR(getMaxCallTargetOffset)}, + {CC "getResolvedJavaMethodAtSlot", CC "(" CLASS "I)" HS_RESOLVED_METHOD, FN_PTR(getResolvedJavaMethodAtSlot)}, + {CC "getResolvedJavaMethod", CC "(Ljava/lang/Object;J)" HS_RESOLVED_METHOD, FN_PTR(getResolvedJavaMethod)}, + {CC "getConstantPool", CC "(Ljava/lang/Object;J)" HS_CONSTANT_POOL, FN_PTR(getConstantPool)}, + {CC "getResolvedJavaType", CC "(Ljava/lang/Object;JZ)" HS_RESOLVED_KLASS, FN_PTR(getResolvedJavaType)}, + {CC "initializeConfiguration", CC "(" HS_CONFIG ")J", FN_PTR(initializeConfiguration)}, + {CC "installCode", CC "(" TARGET_DESCRIPTION HS_COMPILED_CODE INSTALLED_CODE HS_SPECULATION_LOG ")I", FN_PTR(installCode)}, + {CC "getMetadata", CC "(" TARGET_DESCRIPTION HS_COMPILED_CODE HS_METADATA ")I", FN_PTR(getMetadata)}, + {CC "notifyCompilationStatistics", CC "(I" HS_RESOLVED_METHOD "ZIJJ" INSTALLED_CODE ")V", FN_PTR(notifyCompilationStatistics)}, + {CC "resetCompilationStatistics", CC "()V", FN_PTR(resetCompilationStatistics)}, + {CC "disassembleCodeBlob", CC "(" INSTALLED_CODE ")" STRING, FN_PTR(disassembleCodeBlob)}, + {CC "executeInstalledCode", CC "([" OBJECT INSTALLED_CODE ")" OBJECT, FN_PTR(executeInstalledCode)}, + {CC "getLineNumberTable", CC "(" HS_RESOLVED_METHOD ")[J", FN_PTR(getLineNumberTable)}, + {CC "getLocalVariableTableStart", CC "(" HS_RESOLVED_METHOD ")J", FN_PTR(getLocalVariableTableStart)}, + {CC "getLocalVariableTableLength", CC "(" HS_RESOLVED_METHOD ")I", FN_PTR(getLocalVariableTableLength)}, + {CC "reprofile", CC "(" HS_RESOLVED_METHOD ")V", FN_PTR(reprofile)}, + {CC "invalidateInstalledCode", CC "(" INSTALLED_CODE ")V", FN_PTR(invalidateInstalledCode)}, + {CC "readUncompressedOop", CC "(J)" OBJECT, FN_PTR(readUncompressedOop)}, + {CC "collectCounters", CC "()[J", FN_PTR(collectCounters)}, + {CC "allocateCompileId", CC "(" HS_RESOLVED_METHOD "I)I", FN_PTR(allocateCompileId)}, + {CC "isMature", CC "(" METASPACE_METHOD_DATA ")Z", FN_PTR(isMature)}, + {CC "hasCompiledCodeForOSR", CC "(" HS_RESOLVED_METHOD "II)Z", FN_PTR(hasCompiledCodeForOSR)}, + {CC "getSymbol", CC "(J)" STRING, FN_PTR(getSymbol)}, + {CC "getNextStackFrame", CC "(" HS_STACK_FRAME_REF "[" RESOLVED_METHOD "I)" HS_STACK_FRAME_REF, FN_PTR(getNextStackFrame)}, + {CC "materializeVirtualObjects", CC "(" HS_STACK_FRAME_REF "Z)V", FN_PTR(materializeVirtualObjects)}, + {CC "shouldDebugNonSafepoints", CC "()Z", FN_PTR(shouldDebugNonSafepoints)}, + {CC "writeDebugOutput", CC "([BII)V", FN_PTR(writeDebugOutput)}, + {CC "flushDebugOutput", CC "()V", FN_PTR(flushDebugOutput)}, + {CC "methodDataProfileDataSize", CC "(JI)I", FN_PTR(methodDataProfileDataSize)}, }; int CompilerToVM::methods_count() { return sizeof(methods) / sizeof(JNINativeMethod); } - --- old/hotspot/src/share/vm/memory/allocation.hpp 2015-12-16 21:11:19.165735283 +0100 +++ new/hotspot/src/share/vm/memory/allocation.hpp 2015-12-16 21:11:19.049735281 +0100 @@ -35,6 +35,11 @@ #include "opto/c2_globals.hpp" #endif +#if defined _WINDOWS && _MSC_VER >= 1900 + // 'noexcept' used with no exception handling mode specified; termination on exception is not guaranteed. Specify /EHsc +#pragma warning( disable : 4577 ) +#endif + #include #define ARENA_ALIGN_M1 (((size_t)(ARENA_AMALLOC_ALIGNMENT)) - 1) --- old/hotspot/src/share/vm/oops/typeArrayOop.hpp 2015-12-16 21:11:19.581735290 +0100 +++ new/hotspot/src/share/vm/oops/typeArrayOop.hpp 2015-12-16 21:11:19.461735288 +0100 @@ -129,7 +129,7 @@ Metadata* metadata_at(int which) const { return (Metadata*)*long_at_addr(which); } void metadata_at_put(int which, Metadata* contents) { - *long_at_addr(which) = (long)contents; + *long_at_addr(which) = (jlong)contents; } #else Metadata* metadata_at(int which) const { --- old/hotspot/src/share/vm/opto/buildOopMap.cpp 2015-12-16 21:11:20.001735297 +0100 +++ new/hotspot/src/share/vm/opto/buildOopMap.cpp 2015-12-16 21:11:19.885735295 +0100 @@ -616,7 +616,7 @@ // last block as his only undone child, we can move the OopFlow from the // pred to this block. Otherwise we have to grab a new OopFlow. OopFlow *flow = NULL; // Flag for finding optimized flow - Block *pred = (Block*)0xdeadbeef; + Block *pred = (Block*)(uintptr_t)0xdeadbeef; // Scan this block's preds to find a done predecessor for (uint j = 1; j < b->num_preds(); j++) { Block* p = _cfg->get_block_for_node(b->pred(j)); --- old/hotspot/src/share/vm/opto/compile.cpp 2015-12-16 21:11:20.461735304 +0100 +++ new/hotspot/src/share/vm/opto/compile.cpp 2015-12-16 21:11:20.341735302 +0100 @@ -2409,8 +2409,8 @@ print_method(PHASE_FINAL_CODE); // He's dead, Jim. - _cfg = (PhaseCFG*)0xdeadbeef; - _regalloc = (PhaseChaitin*)0xdeadbeef; + _cfg = (PhaseCFG*)(uintptr_t)0xdeadbeef; + _regalloc = (PhaseChaitin*)(uintptr_t)0xdeadbeef; } --- old/hotspot/src/share/vm/opto/gcm.cpp 2015-12-16 21:11:20.937735312 +0100 +++ new/hotspot/src/share/vm/opto/gcm.cpp 2015-12-16 21:11:20.821735310 +0100 @@ -1445,7 +1445,7 @@ } #endif // Dead. - _node_latency = (GrowableArray *)0xdeadbeef; + _node_latency = (GrowableArray *)(uintptr_t)0xdeadbeef; } bool PhaseCFG::do_global_code_motion() { --- old/hotspot/src/share/vm/opto/split_if.cpp 2015-12-16 21:11:21.385735319 +0100 +++ new/hotspot/src/share/vm/opto/split_if.cpp 2015-12-16 21:11:21.269735317 +0100 @@ -255,7 +255,7 @@ Node *PhaseIdealLoop::spinup( Node *iff_dom, Node *new_false, Node *new_true, Node *use_blk, Node *def, small_cache *cache ) { if (use_blk->is_top()) // Handle dead uses return use_blk; - Node *prior_n = (Node*)0xdeadbeef; + Node *prior_n = (Node*)(uintptr_t)0xdeadbeef; Node *n = use_blk; // Get path input assert( use_blk != iff_dom, "" ); // Here's the "spinup" the dominator tree loop. Do a cache-check @@ -302,7 +302,7 @@ } // Update cache everywhere - prior_n = (Node*)0xdeadbeef; // Reset IDOM walk + prior_n = (Node*)(uintptr_t)0xdeadbeef; // Reset IDOM walk n = use_blk; // Get path input // Spin-up the idom tree again, basically doing path-compression. // Insert cache entries along the way, so that if we ever hit this --- old/hotspot/src/share/vm/opto/type.cpp 2015-12-16 21:11:21.841735326 +0100 +++ new/hotspot/src/share/vm/opto/type.cpp 2015-12-16 21:11:21.721735324 +0100 @@ -50,7 +50,7 @@ // Array which maps compiler types to Basic Types Type::TypeInfo Type::_type_info[Type::lastype] = { - { Bad, T_ILLEGAL, "bad", false, Node::NotAMachineReg, relocInfo::none }, // Bad + { Bad, T_ILLEGAL, "bad", false, (int)Node::NotAMachineReg, relocInfo::none }, // Bad { Control, T_ILLEGAL, "control", false, 0, relocInfo::none }, // Control { Bottom, T_VOID, "top", false, 0, relocInfo::none }, // Top { Bad, T_INT, "int:", false, Op_RegI, relocInfo::none }, // Int @@ -58,8 +58,8 @@ { Half, T_VOID, "half", false, 0, relocInfo::none }, // Half { Bad, T_NARROWOOP, "narrowoop:", false, Op_RegN, relocInfo::none }, // NarrowOop { Bad, T_NARROWKLASS,"narrowklass:", false, Op_RegN, relocInfo::none }, // NarrowKlass - { Bad, T_ILLEGAL, "tuple:", false, Node::NotAMachineReg, relocInfo::none }, // Tuple - { Bad, T_ARRAY, "array:", false, Node::NotAMachineReg, relocInfo::none }, // Array + { Bad, T_ILLEGAL, "tuple:", false, (int)Node::NotAMachineReg, relocInfo::none }, // Tuple + { Bad, T_ARRAY, "array:", false, (int)Node::NotAMachineReg, relocInfo::none }, // Array #ifdef SPARC { Bad, T_ILLEGAL, "vectors:", false, 0, relocInfo::none }, // VectorS --- old/hotspot/src/share/vm/prims/whitebox.cpp 2015-12-16 21:11:22.341735334 +0100 +++ new/hotspot/src/share/vm/prims/whitebox.cpp 2015-12-16 21:11:22.221735332 +0100 @@ -1287,7 +1287,7 @@ WB_ENTRY(jlong, WB_GetConstantPool(JNIEnv* env, jobject wb, jclass klass)) instanceKlassHandle ikh(java_lang_Class::as_Klass(JNIHandles::resolve(klass))); - return (jlong) ikh->constants(); + return (jlong)(uintptr_t)ikh->constants(); WB_END template --- old/hotspot/src/share/vm/runtime/os.cpp 2015-12-16 21:11:22.809735341 +0100 +++ new/hotspot/src/share/vm/runtime/os.cpp 2015-12-16 21:11:22.689735339 +0100 @@ -124,6 +124,8 @@ } #if defined(_ALLBSD_SOURCE) const time_t zone = (time_t) time_struct.tm_gmtoff; +#elif defined(_WIN32) && _MSC_VER > 1800 + const time_t zone = _timezone; #else const time_t zone = timezone; #endif --- old/hotspot/src/share/vm/utilities/globalDefinitions.hpp 2015-12-16 21:11:23.269735349 +0100 +++ new/hotspot/src/share/vm/utilities/globalDefinitions.hpp 2015-12-16 21:11:23.153735347 +0100 @@ -1065,7 +1065,7 @@ // (These must be implemented as #defines because C++ compilers are // not obligated to inline non-integral constants!) -#define badAddress ((address)::badAddressVal) +#define badAddress ((address)(intptr_t)::badAddressVal) #define badOop (cast_to_oop(::badOopVal)) #define badHeapWord (::badHeapWordVal) #define badJNIHandle (cast_to_oop(::badJNIHandleVal)) --- old/hotspot/src/share/vm/utilities/globalDefinitions_visCPP.hpp 2015-12-16 21:11:23.733735356 +0100 +++ new/hotspot/src/share/vm/utilities/globalDefinitions_visCPP.hpp 2015-12-16 21:11:23.617735354 +0100 @@ -195,6 +195,7 @@ #pragma warning( disable : 4996 ) // unsafe string functions. Same as define _CRT_SECURE_NO_WARNINGS/_CRT_SECURE_NO_DEPRICATE #endif +#if _MSC_VER <= 1800 inline int vsnprintf(char* buf, size_t count, const char* fmt, va_list argptr) { // If number of characters written == count, Windows doesn't write a // terminating NULL, so we do it ourselves. @@ -202,6 +203,7 @@ if (count > 0) buf[count-1] = '\0'; return ret; } +#endif // Portability macros #define PRAGMA_INTERFACE --- old/hotspot/src/share/vm/utilities/vmError.cpp 2015-12-16 21:11:24.181735363 +0100 +++ new/hotspot/src/share/vm/utilities/vmError.cpp 2015-12-16 21:11:24.065735361 +0100 @@ -22,8 +22,8 @@ * */ -#include #include "precompiled.hpp" +#include #include "code/codeCache.hpp" #include "compiler/compileBroker.hpp" #include "compiler/disassembler.hpp" --- old/jdk/src/java.base/windows/native/libnio/ch/Net.c 2015-12-16 21:11:24.697735371 +0100 +++ new/jdk/src/java.base/windows/native/libnio/ch/Net.c 2015-12-16 21:11:24.517735368 +0100 @@ -50,6 +50,10 @@ #endif /* MCAST_BLOCK_SOURCE */ +#if _MSC_VER >= 1900 +#pragma warning(disable: 4091) // typedef ignored on left when no variable is declared +#endif + typedef struct my_ip_mreq_source { IN_ADDR imr_multiaddr; IN_ADDR imr_sourceaddr; --- old/jdk/src/java.desktop/share/native/libfontmanager/sunFont.c 2015-12-16 21:11:25.205735379 +0100 +++ new/jdk/src/java.desktop/share/native/libfontmanager/sunFont.c 2015-12-16 21:11:25.025735377 +0100 @@ -219,7 +219,7 @@ * accelerated glyph cache cells as we do in freeInt/LongMemory(). */ if (ptr != 0) { - free((void*)ptr); + free((void*)(uintptr_t)ptr); } } @@ -257,7 +257,7 @@ if (ptrs) { for (i=0; i< len; i++) { if (ptrs[i] != 0) { - GlyphInfo *ginfo = (GlyphInfo *)ptrs[i]; + GlyphInfo *ginfo = (GlyphInfo *)(uintptr_t)ptrs[i]; if (ginfo->cellInfo != NULL && ginfo->managed == MANAGED_GLYPH) { // invalidate this glyph's accelerated cache cell --- old/jdk/src/java.desktop/windows/native/libawt/windows/awt_Component.cpp 2015-12-16 21:11:25.805735389 +0100 +++ new/jdk/src/java.desktop/windows/native/libawt/windows/awt_Component.cpp 2015-12-16 21:11:25.625735386 +0100 @@ -6958,9 +6958,9 @@ { TRY; - return (jboolean)AwtToolkit::GetInstance().SyncCall( + return (jboolean)(AwtToolkit::GetInstance().SyncCall( (void *(*)(void *))AwtComponent::_NativeHandlesWheelScrolling, - env->NewGlobalRef(self)); + env->NewGlobalRef(self)) != NULL); // global ref is deleted in _NativeHandlesWheelScrolling CATCH_BAD_ALLOC_RET(NULL); @@ -6979,9 +6979,9 @@ jobject selfGlobalRef = env->NewGlobalRef(self); - return (jboolean)AwtToolkit::GetInstance().SyncCall( + return (jboolean)(AwtToolkit::GetInstance().SyncCall( (void*(*)(void*))AwtComponent::_IsObscured, - (void *)selfGlobalRef); + (void *)selfGlobalRef) != NULL); // selfGlobalRef is deleted in _IsObscured CATCH_BAD_ALLOC_RET(NULL); --- old/jdk/src/java.desktop/windows/native/libawt/windows/awt_Desktop.cpp 2015-12-16 21:11:26.453735399 +0100 +++ new/jdk/src/java.desktop/windows/native/libawt/windows/awt_Desktop.cpp 2015-12-16 21:11:26.273735396 +0100 @@ -58,7 +58,7 @@ JNU_ReleaseStringPlatformChars(env, fileOrUri_j, fileOrUri_c); JNU_ReleaseStringPlatformChars(env, verb_j, verb_c); - if ((int)retval <= 32) { + if ((int)(uintptr_t)retval <= 32) { // ShellExecute failed. LPTSTR buffer = NULL; int len = ::FormatMessage( --- old/jdk/src/java.desktop/windows/native/libawt/windows/awt_Frame.cpp 2015-12-16 21:11:27.029735408 +0100 +++ new/jdk/src/java.desktop/windows/native/libawt/windows/awt_Frame.cpp 2015-12-16 21:11:26.845735405 +0100 @@ -1594,7 +1594,7 @@ DWORD fThread = ::GetWindowThreadProcessId(fHWnd, NULL); if (fThread != AwtToolkit::GetInstance().MainThread()) { // check if this thread has been already blocked - BlockedThreadStruct *blockedThread = (BlockedThreadStruct *)sm_BlockedThreads.get((void *)fThread); + BlockedThreadStruct *blockedThread = (BlockedThreadStruct *)sm_BlockedThreads.get((void *)(uintptr_t)fThread); if (blocked) { if (blockedThread == NULL) { blockedThread = new BlockedThreadStruct; @@ -1603,7 +1603,7 @@ 0, fThread); blockedThread->mouseHook = ::SetWindowsHookEx(WH_MOUSE, (HOOKPROC)AwtDialog::MouseHookProc_NonTT, 0, fThread); - sm_BlockedThreads.put((void *)fThread, blockedThread); + sm_BlockedThreads.put((void *)(uintptr_t)fThread, blockedThread); } else { blockedThread->framesCount++; } @@ -1615,7 +1615,7 @@ if ((blockedThread->framesCount) == 1) { ::UnhookWindowsHookEx(blockedThread->modalHook); ::UnhookWindowsHookEx(blockedThread->mouseHook); - sm_BlockedThreads.remove((void *)fThread); + sm_BlockedThreads.remove((void *)(uintptr_t)fThread); delete blockedThread; } else { blockedThread->framesCount--; --- old/jdk/src/java.desktop/windows/native/libawt/windows/awt_List.cpp 2015-12-16 21:11:27.625735418 +0100 +++ new/jdk/src/java.desktop/windows/native/libawt/windows/awt_List.cpp 2015-12-16 21:11:27.441735415 +0100 @@ -824,7 +824,7 @@ jobject selfGlobalRef = env->NewGlobalRef(self); - return (jint)AwtToolkit::GetInstance().SyncCall( + return (jint)(uintptr_t)AwtToolkit::GetInstance().SyncCall( (void *(*)(void *))AwtList::_GetMaxWidth, (void *)selfGlobalRef); // selfGlobalRef is deleted in _GetMaxWidth @@ -1018,8 +1018,8 @@ ses->list = env->NewGlobalRef(self); ses->index = index; - return (jboolean)AwtToolkit::GetInstance().SyncCall( - (void *(*)(void *))AwtList::_IsSelected, ses); + return (jboolean)(AwtToolkit::GetInstance().SyncCall( + (void *(*)(void *))AwtList::_IsSelected, ses) != NULL); // global ref and ses are deleted in _IsSelected CATCH_BAD_ALLOC_RET(FALSE); --- old/jdk/src/java.desktop/windows/native/libawt/windows/awt_Toolkit.cpp 2015-12-16 21:11:28.213735427 +0100 +++ new/jdk/src/java.desktop/windows/native/libawt/windows/awt_Toolkit.cpp 2015-12-16 21:11:28.029735424 +0100 @@ -887,7 +887,7 @@ if (comp != NULL) { comp->SetInputMethod(self, useNativeCompWindow); - comp->ImmAssociateContext((HIMC)context); + comp->ImmAssociateContext((HIMC)(uintptr_t)context); } if (peer != NULL) { --- old/jdk/src/java.desktop/windows/native/libawt/windows/awt_Window.cpp 2015-12-16 21:11:28.897735438 +0100 +++ new/jdk/src/java.desktop/windows/native/libawt/windows/awt_Window.cpp 2015-12-16 21:11:28.713735435 +0100 @@ -3726,8 +3726,8 @@ rfs->component = selfGlobalRef; rfs->isMouseEventCause = isMouseEventCause; - return (jboolean)AwtToolkit::GetInstance().SyncCall( - (void*(*)(void*))AwtWindow::_RequestWindowFocus, rfs); + return (jboolean)(AwtToolkit::GetInstance().SyncCall( + (void*(*)(void*))AwtWindow::_RequestWindowFocus, rfs) != NULL); // global refs and rfs are deleted in _RequestWindowFocus CATCH_BAD_ALLOC_RET(JNI_FALSE); --- old/jdk/src/java.instrument/share/native/libinstrument/Reentrancy.c 2015-12-16 21:11:29.505735448 +0100 +++ new/jdk/src/java.instrument/share/native/libinstrument/Reentrancy.c 2015-12-16 21:11:29.325735445 +0100 @@ -90,7 +90,11 @@ jthread thread, const void * expected) { jvmtiError error; +#if defined _WIN32 && _MSC_VER >= 1900 + void * test = (void *)(uintptr_t) 0x99999999; +#else void * test = (void *) 0x99999999; +#endif /* now check if we do a fetch we get what we wrote */ error = (*jvmtienv)->GetThreadLocalStorage( --- old/jdk/src/java.prefs/windows/native/libprefs/WindowsPreferences.c 2015-12-16 21:11:30.013735456 +0100 +++ new/jdk/src/java.prefs/windows/native/libprefs/WindowsPreferences.c 2015-12-16 21:11:29.833735453 +0100 @@ -46,9 +46,9 @@ jintArray result; str = (*env)->GetByteArrayElements(env, lpSubKey, NULL); CHECK_NULL_RETURN(str, NULL); - errorCode = RegOpenKeyEx((HKEY)hKey, str, 0, securityMask, &handle); + errorCode = RegOpenKeyEx((HKEY)(uintptr_t)hKey, str, 0, securityMask, &handle); (*env)->ReleaseByteArrayElements(env, lpSubKey, str, 0); - tmp[0]= (int) handle; + tmp[0]= (int)(uintptr_t) handle; tmp[1]= errorCode; result = (*env)->NewIntArray(env,2); if (result != NULL) { @@ -59,7 +59,7 @@ JNIEXPORT jint JNICALL Java_java_util_prefs_WindowsPreferences_WindowsRegCloseKey (JNIEnv* env, jclass this_class, jint hKey) { - return (jint) RegCloseKey((HKEY) hKey); + return (jint) RegCloseKey((HKEY)(uintptr_t) hKey); }; JNIEXPORT jintArray JNICALL Java_java_util_prefs_WindowsPreferences_WindowsRegCreateKeyEx @@ -72,11 +72,11 @@ jintArray result = NULL; str = (*env)->GetByteArrayElements(env, lpSubKey, NULL); CHECK_NULL_RETURN(str, NULL); - errorCode = RegCreateKeyEx((HKEY)hKey, str, 0, NULL, + errorCode = RegCreateKeyEx((HKEY)(uintptr_t)hKey, str, 0, NULL, REG_OPTION_NON_VOLATILE, KEY_READ, NULL, &handle, &lpdwDisposition); (*env)->ReleaseByteArrayElements(env, lpSubKey, str, 0); - tmp[0]= (int) handle; + tmp[0]= (int)(uintptr_t) handle; tmp[1]= errorCode; tmp[2]= lpdwDisposition; result = (*env)->NewIntArray(env,3); @@ -92,7 +92,7 @@ int result; str = (*env)->GetByteArrayElements(env, lpSubKey, NULL); CHECK_NULL_RETURN(str, -1); - result = RegDeleteKey((HKEY)hKey, str); + result = RegDeleteKey((HKEY)(uintptr_t)hKey, str); (*env)->ReleaseByteArrayElements(env, lpSubKey, str, 0); return result; @@ -100,7 +100,7 @@ JNIEXPORT jint JNICALL Java_java_util_prefs_WindowsPreferences_WindowsRegFlushKey (JNIEnv* env, jclass this_class, jint hKey) { - return RegFlushKey ((HKEY)hKey); + return RegFlushKey ((HKEY)(uintptr_t)hKey); } JNIEXPORT jbyteArray JNICALL Java_java_util_prefs_WindowsPreferences_WindowsRegQueryValueEx @@ -112,7 +112,7 @@ DWORD valueSize; valueNameStr = (*env)->GetByteArrayElements(env, valueName, NULL); CHECK_NULL_RETURN(valueNameStr, NULL); - if (RegQueryValueEx((HKEY)hKey, valueNameStr, NULL, &valueType, NULL, + if (RegQueryValueEx((HKEY)(uintptr_t)hKey, valueNameStr, NULL, &valueType, NULL, &valueSize) != ERROR_SUCCESS) { (*env)->ReleaseByteArrayElements(env, valueName, valueNameStr, 0); return NULL; @@ -120,7 +120,7 @@ buffer = (char*)malloc(valueSize); if (buffer != NULL) { - if (RegQueryValueEx((HKEY)hKey, valueNameStr, NULL, &valueType, buffer, + if (RegQueryValueEx((HKEY)(uintptr_t)hKey, valueNameStr, NULL, &valueType, buffer, &valueSize) != ERROR_SUCCESS) { free(buffer); (*env)->ReleaseByteArrayElements(env, valueName, valueNameStr, 0); @@ -161,7 +161,7 @@ CHECK_NULL_RETURN(dataStr, -1); valueNameStr = (*env)->GetByteArrayElements(env, valueName, NULL); if (valueNameStr != NULL) { - error_code = RegSetValueEx((HKEY)hKey, valueNameStr, 0, + error_code = RegSetValueEx((HKEY)(uintptr_t)hKey, valueNameStr, 0, REG_SZ, dataStr, size); (*env)->ReleaseByteArrayElements(env, valueName, valueNameStr, 0); } @@ -176,7 +176,7 @@ if (valueName == NULL) {return -1;} valueNameStr = (*env)->GetByteArrayElements(env, valueName, NULL); CHECK_NULL_RETURN(valueNameStr, -1); - error_code = RegDeleteValue((HKEY)hKey, valueNameStr); + error_code = RegDeleteValue((HKEY)(uintptr_t)hKey, valueNameStr); (*env)->ReleaseByteArrayElements(env, valueName, valueNameStr, 0); return error_code; } @@ -190,7 +190,7 @@ int maxSubKeyLength = -1; int subKeysNumber = -1; int errorCode = -1; - errorCode = RegQueryInfoKey((HKEY)hKey, NULL, NULL, NULL, + errorCode = RegQueryInfoKey((HKEY)(uintptr_t)hKey, NULL, NULL, NULL, &subKeysNumber, &maxSubKeyLength, NULL, &valuesNumber, &maxValueNameLength, NULL, NULL, NULL); @@ -216,7 +216,7 @@ JNU_ThrowOutOfMemoryError(env, "native memory allocation failed"); return NULL; } - if (RegEnumKeyEx((HKEY) hKey, subKeyIndex, buffer, &size, NULL, NULL, + if (RegEnumKeyEx((HKEY)(uintptr_t) hKey, subKeyIndex, buffer, &size, NULL, NULL, NULL, NULL) != ERROR_SUCCESS){ free(buffer); return NULL; @@ -240,7 +240,7 @@ JNU_ThrowOutOfMemoryError(env, "native memory allocation failed"); return NULL; } - error_code = RegEnumValue((HKEY) hKey, valueIndex, buffer, + error_code = RegEnumValue((HKEY)(uintptr_t) hKey, valueIndex, buffer, &size, NULL, NULL, NULL, NULL); if (error_code!= ERROR_SUCCESS){ free(buffer); --- old/jdk/src/jdk.accessibility/windows/native/libjavaaccessbridge/AccessBridgeATInstance.cpp 2015-12-16 21:11:30.521735464 +0100 +++ new/jdk/src/jdk.accessibility/windows/native/libjavaaccessbridge/AccessBridgeATInstance.cpp 2015-12-16 21:11:30.337735461 +0100 @@ -144,10 +144,10 @@ #define THREAD_PROC unsigned int __stdcall typedef unsigned int (__stdcall *THREAD_ROUTINE)(LPVOID lpThreadParameter); -static HANDLE BeginThread(THREAD_ROUTINE thread_func,DWORD *id,DWORD param) +static HANDLE BeginThread(THREAD_ROUTINE thread_func,DWORD *id,LPVOID param) { HANDLE ret; - ret = (HANDLE) _beginthreadex(NULL,0,thread_func,(void *)param,0,(unsigned int *)id); + ret = (HANDLE) _beginthreadex(NULL,0,thread_func,param,0,(unsigned int *)id); if(ret == INVALID_HANDLE_VALUE) ret = NULL; return(ret); @@ -197,7 +197,7 @@ event_struct->winAccessBridgeWindow = ABHandleToLong(winAccessBridgeWindow); if(!JavaBridgeThreadId) { - HANDLE JavaBridgeThreadHandle = BeginThread(JavaBridgeThread,&JavaBridgeThreadId,(DWORD)event_struct); + HANDLE JavaBridgeThreadHandle = BeginThread(JavaBridgeThread,&JavaBridgeThreadId,NULL); CloseHandle(JavaBridgeThreadHandle); } PostThreadMessage(JavaBridgeThreadId,WM_USER,(WPARAM)event_struct,0); --- old/jdk/src/jdk.accessibility/windows/native/libjavaaccessbridge/AccessBridgeJavaEntryPoints.cpp 2015-12-16 21:11:31.113735473 +0100 +++ new/jdk/src/jdk.accessibility/windows/native/libjavaaccessbridge/AccessBridgeJavaEntryPoints.cpp 2015-12-16 21:11:30.929735470 +0100 @@ -955,7 +955,7 @@ accessibleContext); if (getHWNDFromAccessibleContextMethod != (jmethodID) 0) { - rHWND = (HWND)jniEnv->CallIntMethod(accessBridgeObject, getHWNDFromAccessibleContextMethod, + rHWND = (HWND)(uintptr_t)jniEnv->CallIntMethod(accessBridgeObject, getHWNDFromAccessibleContextMethod, accessibleContext); EXCEPTION_CHECK("Getting HWNDFromAccessibleContext - call to CallIntMethod()", (HWND)0); PrintDebugString("\r\n rHWND = %X", rHWND); --- old/jdk/src/jdk.accessibility/windows/native/libjavaaccessbridge/JavaAccessBridge.cpp 2015-12-16 21:11:31.749735483 +0100 +++ new/jdk/src/jdk.accessibility/windows/native/libjavaaccessbridge/JavaAccessBridge.cpp 2015-12-16 21:11:31.569735481 +0100 @@ -1726,7 +1726,7 @@ PackageType *type = (PackageType *) buffer; PropertyCaretChangePackage *pkg = (PropertyCaretChangePackage *) (buffer + sizeof(PackageType)); *type = cPropertyCaretChangePackage; - pkg->vmID = (long) dialogWindow; + pkg->vmID = (long)(uintptr_t) dialogWindow; // make new Global Refs and send events only to those ATs that want 'em AccessBridgeATInstance *ati = ATs; @@ -1781,7 +1781,7 @@ PackageType *type = (PackageType *) buffer; PropertyDescriptionChangePackage *pkg = (PropertyDescriptionChangePackage *) (buffer + sizeof(PackageType)); *type = cPropertyDescriptionChangePackage; - pkg->vmID = (long) dialogWindow; + pkg->vmID = (long)(uintptr_t) dialogWindow; // make new Global Refs and send events only to those ATs that want 'em AccessBridgeATInstance *ati = ATs; @@ -1867,7 +1867,7 @@ PackageType *type = (PackageType *) buffer; PropertyNameChangePackage *pkg = (PropertyNameChangePackage *) (buffer + sizeof(PackageType)); *type = cPropertyNameChangePackage; - pkg->vmID = (long) dialogWindow; + pkg->vmID = (long)(uintptr_t) dialogWindow; // make new Global Refs and send events only to those ATs that want 'em AccessBridgeATInstance *ati = ATs; @@ -1951,7 +1951,7 @@ PackageType *type = (PackageType *) buffer; PropertySelectionChangePackage *pkg = (PropertySelectionChangePackage *) (buffer + sizeof(PackageType)); *type = cPropertySelectionChangePackage; - pkg->vmID = (long) dialogWindow; + pkg->vmID = (long)(uintptr_t) dialogWindow; // make new Global Refs and send events only to those ATs that want 'em AccessBridgeATInstance *ati = ATs; @@ -2004,7 +2004,7 @@ PackageType *type = (PackageType *) buffer; PropertyStateChangePackage *pkg = (PropertyStateChangePackage *) (buffer + sizeof(PackageType)); *type = cPropertyStateChangePackage; - pkg->vmID = (long) dialogWindow; + pkg->vmID = (long)(uintptr_t) dialogWindow; // make new Global Refs and send events only to those ATs that want 'em AccessBridgeATInstance *ati = ATs; @@ -2088,7 +2088,7 @@ PackageType *type = (PackageType *) buffer; PropertyTextChangePackage *pkg = (PropertyTextChangePackage *) (buffer + sizeof(PackageType)); *type = cPropertyTextChangePackage; - pkg->vmID = (long) dialogWindow; + pkg->vmID = (long)(uintptr_t) dialogWindow; // make new Global Refs and send events only to those ATs that want 'em AccessBridgeATInstance *ati = ATs; @@ -2141,7 +2141,7 @@ PackageType *type = (PackageType *) buffer; PropertyValueChangePackage *pkg = (PropertyValueChangePackage *) (buffer + sizeof(PackageType)); *type = cPropertyValueChangePackage; - pkg->vmID = (long) dialogWindow; + pkg->vmID = (long)(uintptr_t) dialogWindow; // make new Global Refs and send events only to those ATs that want 'em AccessBridgeATInstance *ati = ATs; @@ -2224,7 +2224,7 @@ PackageType *type = (PackageType *) buffer; PropertyVisibleDataChangePackage *pkg = (PropertyVisibleDataChangePackage *) (buffer + sizeof(PackageType)); *type = cPropertyVisibleDataChangePackage; - pkg->vmID = (long) dialogWindow; + pkg->vmID = (long)(uintptr_t) dialogWindow; // make new Global Refs and send events only to those ATs that want 'em AccessBridgeATInstance *ati = ATs; @@ -2276,7 +2276,7 @@ PackageType *type = (PackageType *) buffer; PropertyChildChangePackage *pkg = (PropertyChildChangePackage *) (buffer + sizeof(PackageType)); *type = cPropertyChildChangePackage; - pkg->vmID = (long) dialogWindow; + pkg->vmID = (long)(uintptr_t) dialogWindow; // make new Global Refs and send events only to those ATs that want 'em AccessBridgeATInstance *ati = ATs; @@ -2334,7 +2334,7 @@ PackageType *type = (PackageType *) buffer; PropertyActiveDescendentChangePackage *pkg = (PropertyActiveDescendentChangePackage *) (buffer + sizeof(PackageType)); *type = cPropertyActiveDescendentChangePackage; - pkg->vmID = (long) dialogWindow; + pkg->vmID = (long)(uintptr_t) dialogWindow; // make new Global Refs and send events only to those ATs that want 'em AccessBridgeATInstance *ati = ATs; @@ -2392,7 +2392,7 @@ PackageType *type = (PackageType *) buffer; PropertyTableModelChangePackage *pkg = (PropertyTableModelChangePackage *) (buffer + sizeof(PackageType)); *type = cPropertyTableModelChangePackage; - pkg->vmID = (long) dialogWindow; + pkg->vmID = (long)(uintptr_t) dialogWindow; // make new Global Refs and send events only to those ATs that want 'em AccessBridgeATInstance *ati = ATs; @@ -2483,7 +2483,7 @@ PackageType *type = (PackageType *) buffer; \ packageStruct *pkg = (packageStruct *) (buffer + sizeof(PackageType)); \ *type = packageConstant; \ - pkg->vmID = (long) dialogWindow; \ + pkg->vmID = (long)(uintptr_t) dialogWindow; \ \ /* make new Global Refs, send events only to those ATs that want 'em */ \ AccessBridgeATInstance *ati = ATs; \ @@ -2521,7 +2521,7 @@ PackageType *type = (PackageType *) buffer; JavaShutdownPackage *pkg = (JavaShutdownPackage *) (buffer + sizeof(PackageType)); *type = cJavaShutdownPackage; - pkg->vmID = (long) dialogWindow; + pkg->vmID = (long)(uintptr_t) dialogWindow; /* make new Global Refs, send events only to those ATs that want 'em */ AccessBridgeATInstance *ati = ATs; @@ -2719,7 +2719,7 @@ } // Get the component - return awt.GetComponent(env, (void *)windowHandle); + return awt.GetComponent(env, (void *)(uintptr_t) windowHandle); } @@ -2762,7 +2762,7 @@ dsi_win = (JAWT_Win32DrawingSurfaceInfo *)dsi->platformInfo; // Get the window handle - windowHandle = (jint)dsi_win->hwnd; + windowHandle = (jint)(uintptr_t)dsi_win->hwnd; // Free the drawing surface info ds->FreeDrawingSurfaceInfo(dsi); --- old/jdk/src/jdk.accessibility/windows/native/libwindowsaccessbridge/WinAccessBridge.cpp 2015-12-16 21:11:32.285735492 +0100 +++ new/jdk/src/jdk.accessibility/windows/native/libwindowsaccessbridge/WinAccessBridge.cpp 2015-12-16 21:11:32.105735489 +0100 @@ -167,7 +167,7 @@ * Our window proc * */ - BOOL CALLBACK AccessBridgeDialogProc(HWND hDlg, UINT message, UINT wParam, LONG lParam) { + INT_PTR CALLBACK AccessBridgeDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { COPYDATASTRUCT *sentToUs; char *package; @@ -860,7 +860,7 @@ PackageType *type = (PackageType *) buffer; IsJavaWindowPackage *pkg = (IsJavaWindowPackage *) (buffer + sizeof(PackageType)); *type = cIsJavaWindowPackage; - pkg->window = (jint) window; + pkg->window = (jint)(uintptr_t) window; PrintDebugString("WinAccessBridge::isJavaWindow(%p)", window); @@ -965,7 +965,7 @@ PackageType *type = (PackageType *) buffer; GetAccessibleContextFromHWNDPackage *pkg = (GetAccessibleContextFromHWNDPackage *) (buffer + sizeof(PackageType)); *type = cGetAccessibleContextFromHWNDPackage; - pkg->window = (jint) window; + pkg->window = (jint)(uintptr_t) window; PrintDebugString("WinAccessBridge::getAccessibleContextFromHWND(%p, )", window); @@ -1127,7 +1127,7 @@ // find vmID, etc. from HWND; ask that VM for the AC w/Focus HWND pkgVMID = (HWND)ABLongToHandle( pkg->rVMID ) ; if (getAccessibleContextFromHWND(window, (long *)&(pkgVMID), &(pkg->rAccessibleContext)) == TRUE) { - HWND destABWindow = javaVMs->findAccessBridgeWindow((long)pkgVMID); // ineffecient [[[FIXME]]] + HWND destABWindow = javaVMs->findAccessBridgeWindow((long)(uintptr_t)pkgVMID); // ineffecient [[[FIXME]]] if (sendMemoryPackage(buffer, sizeof(buffer), destABWindow) == TRUE) { *vmID = pkg->rVMID; *AccessibleContext = pkg->rAccessibleContext; --- old/jdk/src/jdk.accessibility/windows/native/libwindowsaccessbridge/WinAccessBridge.h 2015-12-16 21:11:32.825735501 +0100 +++ new/jdk/src/jdk.accessibility/windows/native/libwindowsaccessbridge/WinAccessBridge.h 2015-12-16 21:11:32.641735498 +0100 @@ -42,8 +42,8 @@ BOOL WINAPI DllMain(HINSTANCE hinstDll, DWORD fdwReason, LPVOID lpvReserved); void AppendToCallOutput(char *s); - BOOL CALLBACK AccessBridgeDialogProc(HWND hDlg, UINT message, - UINT wParam, LONG lParam); + INT_PTR CALLBACK AccessBridgeDialogProc(HWND hDlg, UINT message, + WPARAM wParam, LPARAM lParam); HWND getTopLevelHWND(HWND descendent); } --- old/jdk/src/jdk.crypto.mscapi/windows/native/libsunmscapi/security.cpp 2015-12-16 21:11:33.337735509 +0100 +++ new/jdk/src/jdk.crypto.mscapi/windows/native/libsunmscapi/security.cpp 2015-12-16 21:11:33.153735506 +0100 @@ -1443,20 +1443,19 @@ (JNIEnv *env, jobject obj, jlong hKey) { DWORD dwDataLen = sizeof(DWORD); - BYTE pbData[sizeof(DWORD)]; DWORD length = 0; __try { // Get key length (in bits) //TODO - may need to use KP_BLOCKLEN instead? - if (!(::CryptGetKeyParam((HCRYPTKEY) hKey, KP_KEYLEN, (BYTE *)pbData, &dwDataLen, + // pbData must be a pointer to a DWORD value with KP_KEYLEN + if (!(::CryptGetKeyParam((HCRYPTKEY) hKey, KP_KEYLEN, (BYTE *)&length, &dwDataLen, 0))) { ThrowException(env, KEY_EXCEPTION, GetLastError()); __leave; } - length = (DWORD) pbData; } __finally { --- old/jdk/src/jdk.jdi/share/native/libdt_shmem/shmemBase.c 2015-12-16 21:11:33.857735517 +0100 +++ new/jdk/src/jdk.jdi/share/native/libdt_shmem/shmemBase.c 2015-12-16 21:11:33.677735514 +0100 @@ -537,7 +537,7 @@ return SYS_NOMEM; } - sprintf(connection->name, "%s.%ld", transport->name, sysProcessGetID()); + sprintf(connection->name, "%s.%ld", transport->name, (jint)sysProcessGetID()); error = sysSharedMemOpen(connection->name, &connection->sharedMemory, &connection->shared); if (error != SYS_OK) { @@ -601,7 +601,7 @@ return SYS_NOMEM; } - sprintf(connection->name, "%s.%ld", transport->name, otherPID); + sprintf(connection->name, "%s.%ld", transport->name, (jint)otherPID); error = sysSharedMemCreate(connection->name, sizeof(SharedMemory), &connection->sharedMemory, &connection->shared); if (error != SYS_OK) { --- old/jdk/src/jdk.pack200/share/native/common-unpack/utils.h 2015-12-16 21:11:34.369735525 +0100 +++ new/jdk/src/jdk.pack200/share/native/common-unpack/utils.h 2015-12-16 21:11:34.189735522 +0100 @@ -33,16 +33,16 @@ #endif // overflow management -#define OVERFLOW ((uint)-1) -#define PSIZE_MAX (OVERFLOW/2) /* normal size limit */ +#define PSIZE_OVERFLOW ((uint)-1) +#define PSIZE_MAX (PSIZE_OVERFLOW/2) /* normal size limit */ inline size_t scale_size(size_t size, size_t scale) { - return (size > PSIZE_MAX / scale) ? OVERFLOW : size * scale; + return (size > PSIZE_MAX / scale) ? PSIZE_OVERFLOW : size * scale; } inline size_t add_size(size_t size1, size_t size2) { return ((size1 | size2 | (size1 + size2)) > PSIZE_MAX) - ? OVERFLOW + ? PSIZE_OVERFLOW : size1 + size2; }