RFR: 8317696: Fix compilation with clang-16 [v4]

Alexey Ivanov aivanov at openjdk.org
Mon Oct 16 12:09:50 UTC 2023


On Wed, 11 Oct 2023 09:27:30 GMT, Jan Kratochvil <jkratochvil at openjdk.org> wrote:

>> `--with-toolchain-type=clang` fails the compilation for me with `clang-16.0.6-3.fc38.x86_64`
>> 
>> While the warnings can be disabled I find better to just fix them. The GTK prototypes in JDK reported by clang are either missing or wrong. 
>> 
>> 
>> src/java.base/unix/native/libnet/DefaultProxySelector.c:378:41: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
>>     proxies = (*g_proxy_resolver_lookup)(resolver, uri, NULL, &error);
>>                                         ^
>> src/java.base/unix/native/libnet/DefaultProxySelector.c:397:63: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
>>                                 (*g_network_address_parse_uri)(proxies[i], 0,
>>                                                               ^
>> src/java.base/unix/native/libnet/DefaultProxySelector.c:402:70: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
>>                             phost = (*g_network_address_get_hostname)(conn);
>>                                                                      ^
>> src/java.base/unix/native/libnet/DefaultProxySelector.c:403:66: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
>>                             pport = (*g_network_address_get_port)(conn);
>>                                                                  ^
>> src/java.base/unix/native/libnet/DefaultProxySelector.c:445:22: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
>>         (*g_strfreev)(proxies);
>>                      ^
>> src/java.base/unix/native/libnet/DefaultProxySelector.c:448:25: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
>>         (*g_clear_error)(&error);
>>                         ^
>> Compiling X11Renderer.c (for libawt_headless.so)
>> In file included from src/java.desktop/unix/native/common/java2d/x11/X11PMBlitLoops.c:29:
>> In file included from src/java.desktop/unix/native/common/java2d/x11/X11Surf...
>
> Jan Kratochvil has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Remove the XShmQueryExtension declaration completely.

Client tests are green.

Looks good to me.

-------------

Marked as reviewed by aivanov (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/16092#pullrequestreview-1679806119


More information about the net-dev mailing list