On 2020-08-27 21:39, Philip Race wrote:
Bug : https://bugs.openjdk.java.net/browse/JDK-8074844
Webrev : http://cr.openjdk.java.net/~prr/8074844/index.html
Looks good to me.
Thank you Phil for cleaning this up!
/Magnus
This resolves the disabled compiler warnings in what is now quite a
small fontmanager library.
I've built windows, mac and linux in our build system and run our full
battery of automated tests and sanity checked manual.
A quick run down of how the warnings map to the changes
DISABLED_WARNINGS_clang := sign-compare,
DISABLED_WARNINGS_gcc := sign-compare unused-function
int-to-pointer-cast,
Sign compare in both of the above are the reason for the majority of
the changes in freetypeScaler.c
and also the change in hb-jdk.h
unused-function was _free_nothing in
src/java.desktop/share/native/libfontmanager/hb-jdk-font.cc
int-to-pointer-cast was an issue for 32 bit as raised here
https://bugs.openjdk.java.net/browse/JDK-8250605
when a previous removal broke 32 bit Linux. Since we don't build or
test that I was flying in the dark here
using the warnings from that bug. The changes for this are those in
src/java.desktop/share/native/libfontmanager/DrawGlyphList.c
src/java.desktop/unix/native/libfontmanager/X11FontScaler.c
DISABLED_WARNINGS_microsoft := 4018 4146 4244 4996,
The unique windows warnings were
./open/src/java.desktop/share/native/libfontmanager/HBShaper.c(216):
error C2220: the following warning is treated as an error
./open/src/java.desktop/share/native/libfontmanager/HBShaper.c(216):
warning C4244: '=': conversion from 'jlong' to 'long', possible loss
of data
./open/src/java.desktop/share/native/libfontmanager/freetypeScaler.c(1216):
error C2220: the following warning is treated as an error
./open/src/java.desktop/share/native/libfontmanager/freetypeScaler.c(1216):
warning C4146: unary minus operator applied to unsigned type, result
still unsigned
./open/src/java.desktop/windows/native/libfontmanager/lcdglyph.c(128):
error C2220: the following warning is treated as an error
[
./open/src/java.desktop/windows/native/libfontmanager/lcdglyph.c(128):
warning C4996: 'GetVersion': was declared deprecated
GetVersion isn't needed any more since we aren't likely to be running
on anything older than XP !
-phil.