java/openjdk8: fix build with clang 15

During an exp-run for llvm 15 (see bug 265425), it turned out that
java/openjdk8 failed to build with clang 15:

    /wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:64:30: error: incompatible pointer to integer conversion returning 'void *' from a function with result type 'int' [-Wint-conversion]
        INVOKE(SplashLoadMemory, NULL)(pdata, size);
                                 ^~~~
    /usr/include/sys/_null.h:34:14: note: expanded from macro 'NULL'
    #define NULL    ((void *)0)
                    ^~~~~~~~~~~
    /wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:60:39: note: expanded from macro 'INVOKE'
    #define INVOKE(name,def) _INVOKE(name,def,return)
                                          ^~~
    /wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:57:25: note: expanded from macro '_INVOKE'
        if (!proc) { return def; } \
                            ^~~
    /wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:68:28: error: incompatible pointer to integer conversion returning 'void *' from a function with result type 'int' [-Wint-conversion]
        INVOKE(SplashLoadFile, NULL)(filename);
                               ^~~~
    /usr/include/sys/_null.h:34:14: note: expanded from macro 'NULL'
    #define NULL    ((void *)0)
                    ^~~~~~~~~~~
    /wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:60:39: note: expanded from macro 'INVOKE'
    #define INVOKE(name,def) _INVOKE(name,def,return)
                                          ^~~
    /wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:57:25: note: expanded from macro '_INVOKE'
        if (!proc) { return def; } \
                            ^~~
    2 errors generated.

Indeed, instead of the pointer value NULL, the integer value 0 should be
used.

PR:		268223
Approved by:	portmgr (tcberner)
MFH:		2022Q4
This commit is contained in:
Dimitry Andric 2022-12-07 15:53:48 +01:00
parent 76a985cab0
commit d7146f6d33

View File

@ -0,0 +1,16 @@
--- jdk/src/share/bin/splashscreen_stubs.c.orig 2022-07-31 16:21:00 UTC
+++ jdk/src/share/bin/splashscreen_stubs.c
@@ -61,11 +61,11 @@ int DoSplashLoadMemory(void* pdata, int size) {
#define INVOKEV(name) _INVOKE(name, ,;)
int DoSplashLoadMemory(void* pdata, int size) {
- INVOKE(SplashLoadMemory, NULL)(pdata, size);
+ INVOKE(SplashLoadMemory, 0)(pdata, size);
}
int DoSplashLoadFile(const char* filename) {
- INVOKE(SplashLoadFile, NULL)(filename);
+ INVOKE(SplashLoadFile, 0)(filename);
}
void DoSplashInit(void) {