getting a handle on build warnings
Kelly O'Hair
Kelly.Ohair at Sun.COM
Mon Aug 18 19:37:16 UTC 2008
With the integration of the changeset:
http://hg.openjdk.java.net/jdk7/tl/jdk/rev/e093efae8c5f
The jdk7 compiler warnings have gone down a bunch, running my script
over the build logs of all platforms I came up with the following top 20:
Top 20 'src/' files mentioned in warning messages:
-------------------------------------------------
2062 src/closed/share/classes/sun/jdbc/odbc/JdbcOdbc.c
1096 src/solaris/native/sun/awt/gtk2_interface.c
883 src/closed/share/native/sun/java2d/cmm/kcms/evalth13.c
276 src/build/tools/javazic/Gen.java
272 src/closed/share/native/sun/java2d/cmm/kcms/evalth14.c
170 src/share/native/sun/security/jgss/wrapper/GSSLibStub.c
136 src/share/native/sun/awt/medialib/mlib_ImageAffineEdge.c
128 src/share/native/sun/font/layout/LEGlyphStorage.h
114 src/share/classes/javax/sql/rowset/BaseRowSet.java
96 src/solaris/native/java/io/io_util_md.h
92 src/solaris/native/sun/java2d/x11/X11Renderer.c
84 src/build/tools/javazic/Time.java
64 src/share/native/sun/awt/giflib/dgif_lib.c
62 src/solaris/native/sun/awt/medialib/mlib_v_ImageLookUpSIS32U16Func.c
62 src/solaris/native/sun/awt/medialib/mlib_v_ImageLookUpSIS32S16Func.c
58 src/closed/share/native/sun/font/t2k/t2k.c
52 src/share/native/sun/awt/image/jpeg/imageioJPEG.c
48 src/share/classes/java/util/Formatter.java
48 src/javaws/solaris/native/system_md.c
48 src/build/tools/compilefontconfig/CompileFontConfig.java
I'll look at fixing JdbcOdbc.c.
Slowly this WILL get clean this up.
-kto
Kelly O'Hair wrote:
>
> FYI...
>
> I dug up my old wstats ksh script and ran it over a concatenation of the
> latest jdk7 build 30 logs for all 8 of builds done by Java Release
> Engineering
> (solaris-i586, solaris-x64, solaris-sparc, solaris-sparcv9, linux-i586,
> linux-x64, windows-i586, and windows-x64).
> Granted, these are OLD Linux systems with gcc 3.2, and lots of duplicates
> here.
>
> The problems with dealing with the C/C++ warnings is that the different
> compilers
> and different releases of the compilers create a bit of an unknown when
> trying
> to fix warnings. Fixing a warning from gcc4 might just trigger a new
> warning
> for some other reason from the Sun Studio compiler, can be frustrating.
> And using just a slightly newer or patched gcc or Sun Studio compiler might
> generate new warnings you haven't seen before.
> This has gotten better over time but continues to be an issue.
>
> A danger also lies in how a warning is fixed in native code that needs
> to work on
> all platforms and with different compilers, for example, adding a cast like
> '(long)' might shut up a warning, but could break Windows X64 where a long
> is 32bits not 64bits. People need to be very careful in the native code.
>
> At least with the javac warnings, fixing them is more concrete, and
> probably
> less risky ;^)
>
> I'm all in favor of fixing the warnings, just trying to make sure it's done
> safely. ;^)
>
> -kto
>
> -------------------------------------
>
>
> Warning Message Counts:
> ----------------------
> 15790 ld warnings (contains 'ld:')
> 6686 C warnings (contains '[.]c[":]')
> 1616 C Include file warnings (contains '[.]h[":]')
> 9700 C++ warnings (contains '[.]cpp[":]')
> 0 C++ Include file warnings (contains '[.]hpp[":]')
> 4432 Java warnings (contains '.java:' or 'Note:' )
> 0 VM warnings (contains 'VM warning:' )
> 600 Javadoc warnings (contains ': warning -')
> 250 Compiler driver warnings (contains cc: or CC: or 'cl :')
> 59 GNU make warnings (contains '.gmk:' or 'akefile:' or '(ignored)'
> or starts with 'gnumake')
> 276 Shell warnings (contains ': not found' or 'awk:')
> 187 Build warnings (contains WARNING:)
> 312 Font warnings (contains 'entry is missing')
> -----
> 39908 Total of above warnings
>
> 29252 Messages that appear to be duplicates
> 18 Remaining errors not counted
> warning: package com.sun.java.swing.plaf does not exist
> warning: package com.sun.java.swing.plaf does not exist
> warning: package com.sun.java.swing.plaf does not exist
> warning: package com.sun.java.swing.plaf does not exist
> warning: package com.sun.java.swing.plaf does not exist
> warning: package com.sun.java.swing.plaf does not exist
> /usr/ccs/bin/as:
> "/export2/BUILD_AREA/jdk7/hotspot/src/os_cpu/solaris_sparc/vm/solaris_sparc.s",
> line 86: warning: label in delay slot (follows CTI)
> warning: package com.sun.java.swing.plaf does not exist
> /usr/ccs/bin/as:
> "/export2/BUILD_AREA/jdk7/hotspot/src/os_cpu/solaris_sparc/vm/solaris_sparc.s",
> line 86: warning: label in delay slot (follows CTI)
> warning: package com.sun.java.swing.plaf does not exist
> warning: package com.sun.java.swing.plaf does not exist
> warning: package com.sun.java.swing.plaf.gtk does not exist
> warning: package com.sun.java.swing.plaf does not exist
> warning: package com.sun.java.swing.plaf.gtk does not exist
> warning: package com.sun.java.swing.plaf does not exist
> warning: package com.sun.java.swing.plaf.gtk does not exist
> warning: package com.sun.java.swing.plaf does not exist
> warning: package com.sun.java.swing.plaf.gtk does not exist
>
> Top 20 'src/' files mentioned in warning messages:
> -------------------------------------------------
> 7972 src/share/native/com/sun/java/util/jar/pack/coding.cpp
> 2062 src/closed/share/classes/sun/jdbc/odbc/JdbcOdbc.c
> 1278 src/share/native/com/sun/java/util/jar/pack/unpack.cpp
> 1188 src/share/classes/sun/corba/Bridge.java
> 1096 src/solaris/native/sun/awt/gtk2_interface.c
> 888 src/closed/share/native/sun/java2d/cmm/kcms/evalth13.c
> 720 src/share/native/com/sun/java/util/jar/pack/bands.h
> 276 src/share/native/com/sun/java/util/jar/pack/unpack.h
> 276 src/build/tools/javazic/Gen.java
> 272 src/closed/share/native/sun/java2d/cmm/kcms/evalth14.c
> 252 src/share/classes/sun/nio/ch/FileChannelImpl.java
> 204 src/share/native/com/sun/java/util/jar/pack/bytes.h
> 204 src/share/classes/org/omg/CORBA/ORB.java
> 192
> src/share/classes/com/sun/corba/se/impl/presentation/rmi/ExceptionHandlerImpl.java
>
> 170 src/share/native/sun/security/jgss/wrapper/GSSLibStub.c
> 140 src/share/native/com/sun/java/util/jar/pack/zip.cpp
> 136 src/share/native/sun/awt/medialib/mlib_ImageAffineEdge.c
> 128 src/share/native/sun/font/layout/LEGlyphStorage.h
> 114 src/share/classes/javax/sql/rowset/BaseRowSet.java
> 108 src/share/classes/javax/rmi/CORBA/GetORBPropertiesFileAction.java
>
>
>
> Jonathan Gibbons wrote:
>> I've written a program to analyze the warnings in a build log,
>> containing most of
>> the ideas I outlined earlier, and more.
>>
>> Right now, a "warning" is defined as a line containing the string
>> "warning"
>> with false positives filtered out (e.g. a reference to a file called
>> warning.png)
>>
>> It can generate a report in plain text or html, containing any/all of
>> the following:
>> - comparison against a reference log, such as the log for an earlier
>> promoted build
>> - a summary of the warnings, grouped by the location contained in the
>> warning
>> - a summary of the warnings, grouped by the type of the warning
>> The summaries are given sorted both alphabetically and by frequency.
>>
>> I've attached a sample of the output. The input was the log for a
>> build on my
>> laptop. For the purposes of testing, the "reference" was the same log
>> truncated
>> to 25000 lines.
>>
>> The big surprise: One file is responsible for nearly 72% of all the
>> warnings in this
>> build: 1928 warnings out of a total of 2684! The file in question is
>> com/sun/java/util/jar/pack/coding.cpp
>>
>> The corollary is good news for everyone else; there are fewer warnings
>> through
>> the rest of the build than I expected, with only 14 files having 10 or
>> more warnings.
>> But, there are still over 150 files containing warnings :-(
>>
>> -- Jon
>>
>>
>>
>> Jonathan Gibbons wrote:
>>> Well, here's an unexpected initial result.
>>>
>>> I just ran a build of langtools+jdk on my ubuntu laptop. I got a
>>> whopping 2658 warnings!! [Those who volunteered to help get rid of
>>> all the warnings, don't all step back at once!] But surprisingly,
>>> after a quick "sort -u", only 625 of them are unique. So that means
>>> we get on average a 4x bang for the buck for each warning we fix :-)
>>>
>>> -- Jon
>>>
>>>
>>> On Jul 11, 2008, at 11:02 AM, Jonathan Gibbons wrote:
>>>
>>>> Depending on what lint options you use, deprecation warnings are
>>>> typically reported as a single "Note:" at the end of the
>>>> compilation, rather than as individual warning messages. Ideally,
>>>> they should go too, but for now, I'd settle for removing messages
>>>> that show up as diagnostics in IDEs, emacs, etc.
>>>>
>>>> For my part, I work mostly in the langtools area, and we are having
>>>> a general background effort to clean up the code there. The goal is
>>>> to clean the code and then use -Werror to treat any reappearance of
>>>> warnings as errors.
>>>>
>>>> -- Jon
>>>>
>>>>
>>>> On Jul 11, 2008, at 10:52 AM, Rob Ross wrote:
>>>>
>>>>> Just curious, would part of this revision process entail removing
>>>>> calls to deprecated methods and replacing them with their
>>>>> documented replacement methods?
>>>>>
>>>>> There are many warnings about calls to deprecated methods in the
>>>>> OpenJDK code.
>>>>>
>>>>>
>>>>> Rob Ross, Lead Software Engineer
>>>>> E! Networks
>>>>>
>>>>> ---------------------------------------------------
>>>>> "Beware of he who would deny you access to information, for in his
>>>>> heart he dreams himself your master." -- Commissioner Pravin Lal
>>>>>
>>>>>
>>>>>
>>>>> On Jul 11, 2008, at 10:43 AM, Jonathan Gibbons wrote:
>>>>>
>>>>>>
>>>>>> On Jul 11, 2008, at 10:00 AM, Thorbjørn Ravn Andersen wrote:
>>>>>>
>>>>>>> Jonathan Gibbons skrev den 11-07-2008 13:52:
>>>>>>>>
>>>>>>>> Yes, that technique can work well. But either way, the next step is
>>>>>>>> to try writing the code to analyze the build log, to see how far
>>>>>>>> the general
>>>>>>>> idea can be taken, and how much interest there is to track/fix
>>>>>>>> warnings.
>>>>>>>>
>>>>>>> Personally I'd like there to be no warnings at all, and would
>>>>>>> like to contribute work to get there
>>>>>>>
>>>>>>
>>>>>> Thank you.
>>>>>>
>>>>>> Getting rid of the actual warnings will require cooperation from
>>>>>> the teams who are
>>>>>> responsible for the various parts of the code. In some cases,
>>>>>> there may be resistance,
>>>>>> since stability is sometimes preferred over "no warnings". That
>>>>>> being said, what I'm
>>>>>> hoping to achieve with this discussion and any related effort is a
>>>>>> non-intrusive way
>>>>>> of gathering information about warnings, so that we have a better
>>>>>> understanding of
>>>>>> where the warnings are, in what areas of the code and in which
>>>>>> source files. That way,
>>>>>> we can work with the teams involved to see if there is interest in
>>>>>> reducing their
>>>>>> warning count in as safe a way as possible. Any assistance in
>>>>>> getting to that point
>>>>>> would be welcome.
>>>>>>
>>>>>> (Note that anyone contributing to OpenJDK must first sign the Sun
>>>>>> Contributor Agreement;
>>>>>> you can find details at http://sca.dev.java.net.)
>>>>>>
>>>>>> -- Jon
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>>
>> ------------------------------------------------------------------------
>>
>>
>> JDK Build Warnings
>>
>> ------------------------------------------------------------------------
>>
>> * Comparison against reference results
>> o New warnings not found in reference files <#REF_DELTA_LOCNS>
>> * Warnings categorized by location
>> o Warning counts, sorted alphabetically by location
>> <#LOCN_COUNTS_ALPHA>
>> o Warning counts, sorted by frequency of location
>> <#LOCN_COUNTS_FREQ>
>> o Warning counts, sorted alphabetically by location directory
>> <#LOCN_DIR_COUNTS_ALPHA>
>> o Warning counts, sorted by frequency of location directory
>> <#LOCN_DIR_COUNTS_FREQ>
>> o Warning counts, sorted alphabetically by location directory
>> <#LOCN_DIR_COUNTS_ALPHA>
>> o Warning counts, sorted by frequency of location directory
>> <#LOCN_DIR_COUNTS_FREQ>
>> * Warnings categorized by type
>> o Warning counts, sorted alphabetically by type
>> <#TYPE_COUNTS_ALPHA>
>> o Warning counts, sorted by frequency of type
>> <#TYPE_COUNTS_FREQ>
>> o Warnings with unrecognized types <#TYPE_UNKNOWN>
>>
>> ------------------------------------------------------------------------
>>
>>
>> Log files analyzed
>>
>> * build.log
>>
>> total lines read 28834
>> total warnings found 2648
>> unique warnings found 617
>>
>>
>> Reference files analyzed
>>
>> * build-25000.log
>>
>> total lines read 25000
>> total warnings found 2618
>> unique warnings found 590
>>
>>
>> New warnings not found in reference files
>>
>> democlasses/demo/jvmti/hprof/src/hprof_init.c 1
>> democlasses/demo/jvmti/waiters/src/Agent.cpp 1
>> democlasses/demo/jvmti/waiters/src/waiters.cpp 2
>> javax/swing/JColorChooser.java 1
>> javax/swing/JComponent.java 4
>> javax/swing/JInternalFrame.java 2
>> javax/swing/JList.java 4
>> javax/swing/JPopupMenu.java 1
>> javax/swing/JTabbedPane.java 1
>> javax/swing/JTable.java 5
>> javax/swing/JTree.java 4
>> javax/swing/text/JTextComponent.java 3
>> ~NONE~ 1
>>
>>
>> Warning counts, sorted alphabetically by location
>>
>> /usr/include/X11/IntrinsicP.h 1
>> /usr/include/langinfo.h 1
>> /usr/include/sys/cdefs.h 1
>> /usr/include/sys/param.h 2
>> back/ArrayTypeImpl.c 1
>> back/inStream.c 4
>> back/outStream.c 8
>> back/stream.c 4
>> bin/jexec.c 1
>> bin/parse_manifest.c 1
>> build/tools/compilefontconfig/CompileFontConfig.java 4
>> build/tools/dtdbuilder/DTDParser.java 2
>> build/tools/fontchecker/FontChecker.java 2
>> build/tools/generatebreakiteratordata/RuleBasedBreakIteratorBuilder.java
>> 3
>> build/tools/javazic/Gen.java 23
>> build/tools/javazic/GenDoc.java 2
>> build/tools/javazic/Time.java 7
>> com/sun/java/util/jar/pack/bands.cpp 2
>> com/sun/java/util/jar/pack/coding.cpp 1928
>> com/sun/java/util/jar/pack/main.cpp 1
>> com/sun/java/util/jar/pack/unpack.cpp 32
>> com/sun/java/util/jar/pack/unpack.h 24
>> com/sun/java/util/jar/pack/utils.cpp 2
>> com/sun/java/util/jar/pack/zip.cpp 1
>> com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_MidiUtils.c 1
>> com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_PCM.c 5
>> com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_Ports.c 1
>> common/check_code.c 9
>> common/check_format.c 1
>> demo/jvmti/hprof/hprof_init.c 1
>> democlasses/demo/jvmti/hprof/src/hprof_init.c 1
>> democlasses/demo/jvmti/waiters/src/Agent.cpp 1
>> democlasses/demo/jvmti/waiters/src/waiters.cpp 2
>> hpi/native_threads/src/sys_api_td.c 1
>> instrument/JarFacade.c 1
>> java/io/canonicalize_md.c 2
>> java/io/io_util_md.h 8
>> java/lang/Class.c 1
>> java/lang/ClassLoader.c 2
>> java/lang/fdlibm/include/fdlibm.h 1
>> java/lang/fdlibm/src/e_jn.c 1
>> java/lang/fdlibm/src/e_pow.c 1
>> java/lang/fdlibm/src/e_sqrt.c 1
>> java/lang/fdlibm/src/s_ceil.c 1
>> java/lang/fdlibm/src/s_floor.c 1
>> java/lang/fdlibm/src/s_log1p.c 1
>> java/lang/java_props_md.c 3
>> java/lang/reflect/Proxy.c 1
>> java/net/Inet4AddressImpl.c 2
>> java/net/Inet6AddressImpl.c 3
>> java/net/NetworkInterface.c 1
>> java/net/PlainDatagramSocketImpl.c 6
>> java/net/linux_close.c 3
>> java/net/net_util_md.c 2
>> java/nio/Bits.c 8
>> java/nio/MappedByteBuffer.c 1
>> java/util/zip/zip_util.c 1
>> java/util/zip/zlib-1.1.3/inftrees.c 3
>> javavm/include/typedefs.h 8
>> javax/swing/JColorChooser.java 1
>> javax/swing/JComponent.java 4
>> javax/swing/JInternalFrame.java 2
>> javax/swing/JList.java 4
>> javax/swing/JPopupMenu.java 1
>> javax/swing/JTabbedPane.java 1
>> javax/swing/JTable.java 5
>> javax/swing/JTree.java 4
>> javax/swing/text/JTextComponent.java 3
>> sun/awt/awt_DrawingSurface.c 1
>> sun/awt/awt_Font.c 1
>> sun/awt/awt_GraphicsEnv.c 1
>> sun/awt/awt_InputMethod.c 11
>> sun/awt/awt_LoadLibrary.c 2
>> sun/awt/awt_UNIXToolkit.c 1
>> sun/awt/giflib/dgif_lib.c 16
>> sun/awt/image/BufImgSurfaceData.c 1
>> sun/awt/image/jpeg/imageioJPEG.c 19
>> sun/awt/image/jpeg/jpegdecoder.c 1
>> sun/awt/java2d/loops/ByteBinary1Bit.c 5
>> sun/awt/java2d/loops/ByteBinary2Bit.c 5
>> sun/awt/java2d/loops/ByteBinary4Bit.c 5
>> sun/awt/java2d/loops/ByteGray.c 2
>> sun/awt/java2d/loops/ByteIndexed.c 6
>> sun/awt/java2d/loops/FourByteAbgr.c 2
>> sun/awt/java2d/loops/FourByteAbgrPre.c 2
>> sun/awt/java2d/loops/Index12Gray.c 2
>> sun/awt/java2d/loops/Index8Gray.c 2
>> sun/awt/java2d/loops/IntArgb.c 6
>> sun/awt/java2d/loops/IntArgbBm.c 5
>> sun/awt/java2d/loops/IntArgbPre.c 6
>> sun/awt/java2d/loops/IntBgr.c 2
>> sun/awt/java2d/loops/IntRgb.c 2
>> sun/awt/java2d/loops/IntRgbx.c 2
>> sun/awt/java2d/loops/ThreeByteBgr.c 2
>> sun/awt/java2d/loops/TransformHelper.c 3
>> sun/awt/java2d/loops/Ushort555Rgb.c 2
>> sun/awt/java2d/loops/Ushort565Rgb.c 2
>> sun/awt/java2d/loops/UshortGray.c 2
>> sun/awt/java2d/loops/UshortIndexed.c 6
>> sun/awt/java2d/pipe/Region.c 1
>> sun/awt/libpng/pngread.c 1
>> sun/awt/libpng/pngrtran.c 1
>> sun/awt/libpng/pngrutil.c 1
>> sun/awt/libpng/pngwrite.c 1
>> sun/awt/medialib/mlib_ImageAffine.c 7
>> sun/awt/medialib/mlib_ImageAffineEdge.c 34
>> sun/awt/medialib/mlib_ImageColorTrue2Index.c 10
>> sun/awt/medialib/mlib_ImageConvMxN.c 9
>> sun/awt/medialib/mlib_ImageConv_16ext.c 4
>> sun/awt/medialib/mlib_ImageConv_16nw.c 3
>> sun/awt/medialib/mlib_ImageConv_32nw.c 2
>> sun/awt/medialib/mlib_ImageConv_8ext.c 4
>> sun/awt/medialib/mlib_ImageConv_8nw.c 3
>> sun/awt/medialib/mlib_ImageConv_D64nw.c 2
>> sun/awt/medialib/mlib_ImageConv_F32nw.c 1
>> sun/awt/medialib/mlib_ImageConv_u16ext.c 4
>> sun/awt/medialib/mlib_ImageConv_u16nw.c 3
>> sun/awt/medialib/mlib_ImageCopy_Bit.c 4
>> sun/awt/medialib/mlib_ImageCreate.c 2
>> sun/awt/splashscreen/splashscreen_gfx_impl.c 2
>> sun/font/DrawGlyphList.c 5
>> sun/font/X11FontScaler.c 7
>> sun/font/layout/LEGlyphStorage.h 32
>> sun/font/layout/LEInsertionList.h 33
>> sun/font/layout/MorphTables.cpp 1
>> sun/java2d/cmm/lcms/LCMS.c 2
>> sun/java2d/cmm/lcms/cmscgats.c 2
>> sun/java2d/cmm/lcms/cmsio1.c 2
>> sun/java2d/cmm/lcms/cmslut.c 4
>> sun/java2d/cmm/lcms/cmswtpnt.c 1
>> sun/java2d/x11/X11PMBlitLoops.c 2
>> sun/java2d/x11/X11Renderer.c 45
>> sun/java2d/x11/X11SurfaceData.c 10
>> sun/java2d/x11/X11TextRenderer_md.c 1
>> sun/net/spi/DefaultProxySelector.c 1
>> sun/nio/ch/DatagramChannelImpl.c 1
>> sun/nio/ch/InheritedChannel.c 1
>> sun/nio/ch/Net.c 2
>> sun/nio/ch/ServerSocketChannelImpl.c 1
>> sun/nio/ch/SocketChannelImpl.c 1
>> sun/rmi/rmic/Main.java 1
>> sun/rmi/rmic/newrmic/Resources.java 1
>> sun/security/jgss/wrapper/GSSLibStub.c 63
>> sun/security/jgss/wrapper/NativeUtil.c 2
>> sun/security/pkcs11/j2secmod_md.c 3
>> sun/security/pkcs11/wrapper/p11_crypt.c 6
>> sun/security/pkcs11/wrapper/p11_digest.c 1
>> sun/security/pkcs11/wrapper/p11_keymgmt.c 1
>> sun/security/pkcs11/wrapper/p11_md.c 1
>> sun/security/pkcs11/wrapper/p11_sign.c 3
>> sun/security/pkcs11/wrapper/p11_util.c 2
>> sun/tools/serialver/SerialVer.java 1
>> sun/tracing/dtrace/JVM.c 1
>> sun/xawt/XToolkit.c 2
>> sun/xawt/XWindow.c 4
>> sun/xawt/awt_Desktop.c 1
>> transport/socket/socket_md.c 3
>> unpack.cpp 1
>> ~NONE~ 5
>>
>>
>> Warning counts, sorted by frequency of location
>>
>> 1928 com/sun/java/util/jar/pack/coding.cpp
>> 63 sun/security/jgss/wrapper/GSSLibStub.c
>> 45 sun/java2d/x11/X11Renderer.c
>> 34 sun/awt/medialib/mlib_ImageAffineEdge.c
>> 33 sun/font/layout/LEInsertionList.h
>> 32 com/sun/java/util/jar/pack/unpack.cpp
>> 32 sun/font/layout/LEGlyphStorage.h
>> 24 com/sun/java/util/jar/pack/unpack.h
>> 23 build/tools/javazic/Gen.java
>> 19 sun/awt/image/jpeg/imageioJPEG.c
>> 16 sun/awt/giflib/dgif_lib.c
>> 11 sun/awt/awt_InputMethod.c
>> 10 sun/awt/medialib/mlib_ImageColorTrue2Index.c
>> 10 sun/java2d/x11/X11SurfaceData.c
>> 9 common/check_code.c
>> 9 sun/awt/medialib/mlib_ImageConvMxN.c
>> 8 back/outStream.c
>> 8 java/io/io_util_md.h
>> 8 java/nio/Bits.c
>> 8 javavm/include/typedefs.h
>> 7 build/tools/javazic/Time.java
>> 7 sun/awt/medialib/mlib_ImageAffine.c
>> 7 sun/font/X11FontScaler.c
>> 6 java/net/PlainDatagramSocketImpl.c
>> 6 sun/awt/java2d/loops/ByteIndexed.c
>> 6 sun/awt/java2d/loops/IntArgb.c
>> 6 sun/awt/java2d/loops/IntArgbPre.c
>> 6 sun/awt/java2d/loops/UshortIndexed.c
>> 6 sun/security/pkcs11/wrapper/p11_crypt.c
>> 5 com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_PCM.c
>> 5 javax/swing/JTable.java
>> 5 sun/awt/java2d/loops/ByteBinary1Bit.c
>> 5 sun/awt/java2d/loops/ByteBinary2Bit.c
>> 5 sun/awt/java2d/loops/ByteBinary4Bit.c
>> 5 sun/awt/java2d/loops/IntArgbBm.c
>> 5 sun/font/DrawGlyphList.c
>> 5 ~NONE~
>> 4 back/inStream.c
>> 4 back/stream.c
>> 4 build/tools/compilefontconfig/CompileFontConfig.java
>> 4 javax/swing/JComponent.java
>> 4 javax/swing/JList.java
>> 4 javax/swing/JTree.java
>> 4 sun/awt/medialib/mlib_ImageConv_16ext.c
>> 4 sun/awt/medialib/mlib_ImageConv_8ext.c
>> 4 sun/awt/medialib/mlib_ImageConv_u16ext.c
>> 4 sun/awt/medialib/mlib_ImageCopy_Bit.c
>> 4 sun/java2d/cmm/lcms/cmslut.c
>> 4 sun/xawt/XWindow.c
>> 3
>> build/tools/generatebreakiteratordata/RuleBasedBreakIteratorBuilder.java
>> 3 java/lang/java_props_md.c
>> 3 java/net/Inet6AddressImpl.c
>> 3 java/net/linux_close.c
>> 3 java/util/zip/zlib-1.1.3/inftrees.c
>> 3 javax/swing/text/JTextComponent.java
>> 3 sun/awt/java2d/loops/TransformHelper.c
>> 3 sun/awt/medialib/mlib_ImageConv_16nw.c
>> 3 sun/awt/medialib/mlib_ImageConv_8nw.c
>> 3 sun/awt/medialib/mlib_ImageConv_u16nw.c
>> 3 sun/security/pkcs11/j2secmod_md.c
>> 3 sun/security/pkcs11/wrapper/p11_sign.c
>> 3 transport/socket/socket_md.c
>> 2 /usr/include/sys/param.h
>> 2 build/tools/dtdbuilder/DTDParser.java
>> 2 build/tools/fontchecker/FontChecker.java
>> 2 build/tools/javazic/GenDoc.java
>> 2 com/sun/java/util/jar/pack/bands.cpp
>> 2 com/sun/java/util/jar/pack/utils.cpp
>> 2 democlasses/demo/jvmti/waiters/src/waiters.cpp
>> 2 java/io/canonicalize_md.c
>> 2 java/lang/ClassLoader.c
>> 2 java/net/Inet4AddressImpl.c
>> 2 java/net/net_util_md.c
>> 2 javax/swing/JInternalFrame.java
>> 2 sun/awt/awt_LoadLibrary.c
>> 2 sun/awt/java2d/loops/ByteGray.c
>> 2 sun/awt/java2d/loops/FourByteAbgr.c
>> 2 sun/awt/java2d/loops/FourByteAbgrPre.c
>> 2 sun/awt/java2d/loops/Index12Gray.c
>> 2 sun/awt/java2d/loops/Index8Gray.c
>> 2 sun/awt/java2d/loops/IntBgr.c
>> 2 sun/awt/java2d/loops/IntRgb.c
>> 2 sun/awt/java2d/loops/IntRgbx.c
>> 2 sun/awt/java2d/loops/ThreeByteBgr.c
>> 2 sun/awt/java2d/loops/Ushort555Rgb.c
>> 2 sun/awt/java2d/loops/Ushort565Rgb.c
>> 2 sun/awt/java2d/loops/UshortGray.c
>> 2 sun/awt/medialib/mlib_ImageConv_32nw.c
>> 2 sun/awt/medialib/mlib_ImageConv_D64nw.c
>> 2 sun/awt/medialib/mlib_ImageCreate.c
>> 2 sun/awt/splashscreen/splashscreen_gfx_impl.c
>> 2 sun/java2d/cmm/lcms/LCMS.c
>> 2 sun/java2d/cmm/lcms/cmscgats.c
>> 2 sun/java2d/cmm/lcms/cmsio1.c
>> 2 sun/java2d/x11/X11PMBlitLoops.c
>> 2 sun/nio/ch/Net.c
>> 2 sun/security/jgss/wrapper/NativeUtil.c
>> 2 sun/security/pkcs11/wrapper/p11_util.c
>> 2 sun/xawt/XToolkit.c
>> 1 /usr/include/X11/IntrinsicP.h
>> 1 /usr/include/langinfo.h
>> 1 /usr/include/sys/cdefs.h
>> 1 back/ArrayTypeImpl.c
>> 1 bin/jexec.c
>> 1 bin/parse_manifest.c
>> 1 com/sun/java/util/jar/pack/main.cpp
>> 1 com/sun/java/util/jar/pack/zip.cpp
>> 1 com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_MidiUtils.c
>> 1 com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_Ports.c
>> 1 common/check_format.c
>> 1 demo/jvmti/hprof/hprof_init.c
>> 1 democlasses/demo/jvmti/hprof/src/hprof_init.c
>> 1 democlasses/demo/jvmti/waiters/src/Agent.cpp
>> 1 hpi/native_threads/src/sys_api_td.c
>> 1 instrument/JarFacade.c
>> 1 java/lang/Class.c
>> 1 java/lang/fdlibm/include/fdlibm.h
>> 1 java/lang/fdlibm/src/e_jn.c
>> 1 java/lang/fdlibm/src/e_pow.c
>> 1 java/lang/fdlibm/src/e_sqrt.c
>> 1 java/lang/fdlibm/src/s_ceil.c
>> 1 java/lang/fdlibm/src/s_floor.c
>> 1 java/lang/fdlibm/src/s_log1p.c
>> 1 java/lang/reflect/Proxy.c
>> 1 java/net/NetworkInterface.c
>> 1 java/nio/MappedByteBuffer.c
>> 1 java/util/zip/zip_util.c
>> 1 javax/swing/JColorChooser.java
>> 1 javax/swing/JPopupMenu.java
>> 1 javax/swing/JTabbedPane.java
>> 1 sun/awt/awt_DrawingSurface.c
>> 1 sun/awt/awt_Font.c
>> 1 sun/awt/awt_GraphicsEnv.c
>> 1 sun/awt/awt_UNIXToolkit.c
>> 1 sun/awt/image/BufImgSurfaceData.c
>> 1 sun/awt/image/jpeg/jpegdecoder.c
>> 1 sun/awt/java2d/pipe/Region.c
>> 1 sun/awt/libpng/pngread.c
>> 1 sun/awt/libpng/pngrtran.c
>> 1 sun/awt/libpng/pngrutil.c
>> 1 sun/awt/libpng/pngwrite.c
>> 1 sun/awt/medialib/mlib_ImageConv_F32nw.c
>> 1 sun/font/layout/MorphTables.cpp
>> 1 sun/java2d/cmm/lcms/cmswtpnt.c
>> 1 sun/java2d/x11/X11TextRenderer_md.c
>> 1 sun/net/spi/DefaultProxySelector.c
>> 1 sun/nio/ch/DatagramChannelImpl.c
>> 1 sun/nio/ch/InheritedChannel.c
>> 1 sun/nio/ch/ServerSocketChannelImpl.c
>> 1 sun/nio/ch/SocketChannelImpl.c
>> 1 sun/rmi/rmic/Main.java
>> 1 sun/rmi/rmic/newrmic/Resources.java
>> 1 sun/security/pkcs11/wrapper/p11_digest.c
>> 1 sun/security/pkcs11/wrapper/p11_keymgmt.c
>> 1 sun/security/pkcs11/wrapper/p11_md.c
>> 1 sun/tools/serialver/SerialVer.java
>> 1 sun/tracing/dtrace/JVM.c
>> 1 sun/xawt/awt_Desktop.c
>> 1 unpack.cpp
>>
>>
>> Warning counts, sorted alphabetically by location directory
>>
>> /usr/include 1
>> /usr/include/X11 1
>> /usr/include/sys 3
>> back 17
>> bin 2
>> build/tools/compilefontconfig 4
>> build/tools/dtdbuilder 2
>> build/tools/fontchecker 2
>> build/tools/generatebreakiteratordata 3
>> build/tools/javazic 32
>> com/sun/java/util/jar/pack 1990
>> com/sun/media/sound 7
>> common 10
>> demo/jvmti/hprof 1
>> democlasses/demo/jvmti/hprof/src 1
>> democlasses/demo/jvmti/waiters/src 3
>> hpi/native_threads/src 1
>> instrument 1
>> java/io 10
>> java/lang 6
>> java/lang/fdlibm/include 1
>> java/lang/fdlibm/src 6
>> java/lang/reflect 1
>> java/net 17
>> java/nio 9
>> java/util/zip 1
>> java/util/zip/zlib-1.1.3 3
>> javavm/include 8
>> javax/swing 22
>> javax/swing/text 3
>> sun/awt 17
>> sun/awt/giflib 16
>> sun/awt/image 1
>> sun/awt/image/jpeg 20
>> sun/awt/java2d/loops 71
>> sun/awt/java2d/pipe 1
>> sun/awt/libpng 4
>> sun/awt/medialib 92
>> sun/awt/splashscreen 2
>> sun/font 12
>> sun/font/layout 66
>> sun/java2d/cmm/lcms 11
>> sun/java2d/x11 58
>> sun/net/spi 1
>> sun/nio/ch 6
>> sun/rmi/rmic 1
>> sun/rmi/rmic/newrmic 1
>> sun/security/jgss/wrapper 65
>> sun/security/pkcs11 3
>> sun/security/pkcs11/wrapper 14
>> sun/tools/serialver 1
>> sun/tracing/dtrace 1
>> sun/xawt 7
>> transport/socket 3
>> unpack.cpp 1
>> ~NONE~ 5
>>
>>
>> Warning counts, sorted by frequency of location
>>
>> 1990 com/sun/java/util/jar/pack
>> 92 sun/awt/medialib
>> 71 sun/awt/java2d/loops
>> 66 sun/font/layout
>> 65 sun/security/jgss/wrapper
>> 58 sun/java2d/x11
>> 32 build/tools/javazic
>> 22 javax/swing
>> 20 sun/awt/image/jpeg
>> 17 back
>> 17 java/net
>> 17 sun/awt
>> 16 sun/awt/giflib
>> 14 sun/security/pkcs11/wrapper
>> 12 sun/font
>> 11 sun/java2d/cmm/lcms
>> 10 common
>> 10 java/io
>> 9 java/nio
>> 8 javavm/include
>> 7 com/sun/media/sound
>> 7 sun/xawt
>> 6 java/lang
>> 6 java/lang/fdlibm/src
>> 6 sun/nio/ch
>> 5 ~NONE~
>> 4 build/tools/compilefontconfig
>> 4 sun/awt/libpng
>> 3 /usr/include/sys
>> 3 build/tools/generatebreakiteratordata
>> 3 democlasses/demo/jvmti/waiters/src
>> 3 java/util/zip/zlib-1.1.3
>> 3 javax/swing/text
>> 3 sun/security/pkcs11
>> 3 transport/socket
>> 2 bin
>> 2 build/tools/dtdbuilder
>> 2 build/tools/fontchecker
>> 2 sun/awt/splashscreen
>> 1 /usr/include
>> 1 /usr/include/X11
>> 1 demo/jvmti/hprof
>> 1 democlasses/demo/jvmti/hprof/src
>> 1 hpi/native_threads/src
>> 1 instrument
>> 1 java/lang/fdlibm/include
>> 1 java/lang/reflect
>> 1 java/util/zip
>> 1 sun/awt/image
>> 1 sun/awt/java2d/pipe
>> 1 sun/net/spi
>> 1 sun/rmi/rmic
>> 1 sun/rmi/rmic/newrmic
>> 1 sun/tools/serialver
>> 1 sun/tracing/dtrace
>> 1 unpack.cpp
>>
>>
>> Warning counts, sorted alphabetically by location extension
>>
>> .c 474
>> .cpp 61
>> .h 12
>> .java 68
>> ~NONE~ 2
>>
>>
>> Warning counts, sorted by frequency of location extension
>>
>> 474 .c
>> 68 .java
>> 61 .cpp
>> 12 .h
>> 2 ~NONE~
>>
>>
>> Warning counts, sorted alphabetically by type
>>
>> "*" redefined 13
>> '*' may be used uninitialized in this function 126
>> 'class *' has virtual functions but non-virtual destructor 65
>> 'static' is not at beginning of declaration 2
>> argument '*' might be clobbered by '*' 1
>> assignment from incompatible pointer type 1
>> assignment makes integer from pointer without a cast 1
>> cast from pointer to integer of different size 22
>> cast to java.lang.Object[] for a non-varargs call and to suppress this
>> warning 4
>> cast to pointer from integer of different size 137
>> comparison between pointer and integer 3
>> comparison between signed and unsigned 106
>> comparison is always false due to limited range of data type 2
>> constant is too large for*type 18
>> control reaches end of non-void function 1
>> dereferencing type-punned pointer will break strict-aliasing rules 4
>> enumeration value * not handled in switch 101
>> format '*' expects type '*', but argument * has type '*' 12
>> implicit declaration of function 3
>> is Sun proprietary API and may be removed in a future release 67
>> missing braces around initializer 2
>> missing initializer 1
>> missing initializer for member 1874
>> non-varargs call of varargs method with inexact argument type for last
>> parameter 4
>> package * does not exist 1
>> passing * from incompatible pointer type 3
>> pointer targets * differ in signedness 32
>> return makes integer from pointer without a cast 5
>> signed and unsigned type in conditional expression 16
>> the use of `*' is dangerous 1
>> this is the location of the previous definition 13
>> type defaults to * in declaration 2
>> variable '*' might be clobbered by '*' 4
>> ~UNKNOWN~ 1
>>
>>
>> Warning counts, sorted by frequency of type
>>
>> 1874 missing initializer for member
>> 137 cast to pointer from integer of different size
>> 126 '*' may be used uninitialized in this function
>> 106 comparison between signed and unsigned
>> 101 enumeration value * not handled in switch
>> 67 is Sun proprietary API and may be removed in a future release
>> 65 'class *' has virtual functions but non-virtual destructor
>> 32 pointer targets * differ in signedness
>> 22 cast from pointer to integer of different size
>> 18 constant is too large for*type
>> 16 signed and unsigned type in conditional expression
>> 13 "*" redefined
>> 13 this is the location of the previous definition
>> 12 format '*' expects type '*', but argument * has type '*'
>> 5 return makes integer from pointer without a cast
>> 4 cast to java.lang.Object[] for a non-varargs call and to
>> suppress this warning
>> 4 dereferencing type-punned pointer will break strict-aliasing rules
>> 4 non-varargs call of varargs method with inexact argument type
>> for last parameter
>> 4 variable '*' might be clobbered by '*'
>> 3 comparison between pointer and integer
>> 3 implicit declaration of function
>> 3 passing * from incompatible pointer type
>> 2 'static' is not at beginning of declaration
>> 2 comparison is always false due to limited range of data type
>> 2 missing braces around initializer
>> 2 type defaults to * in declaration
>> 1 argument '*' might be clobbered by '*'
>> 1 assignment from incompatible pointer type
>> 1 assignment makes integer from pointer without a cast
>> 1 control reaches end of non-void function
>> 1 missing initializer
>> 1 package * does not exist
>> 1 the use of `*' is dangerous
>> 1 ~UNKNOWN~
>>
>>
>> Warnings with unrecognized types
>>
>> * ../../../src/solaris/native/java/lang/java_props_md.c:124:
>> warning: (near initialization for 'sprops.os_version')
>>
>> ------------------------------------------------------------------------
>> Generated on Sun Jul 13 17:36:12 PDT 2008
More information about the build-dev
mailing list