[kaffe] CVS kaffe (doogie): Several new warnings detected,
including some from jikes.
Kaffe CVS
cvs-commits at kaffe.org
Thu Dec 9 18:40:56 PST 2004
PatchSet 5588
Date: 2004/12/10 02:31:55
Author: doogie
Branch: HEAD
Tag: (none)
Log:
Several new warnings detected, including some from jikes.
Members:
scripts/sort-warnings.pl:1.5->1.6
ChangeLog:1.3133->1.3134
Index: kaffe/scripts/sort-warnings.pl
diff -u kaffe/scripts/sort-warnings.pl:1.5 kaffe/scripts/sort-warnings.pl:1.6
--- kaffe/scripts/sort-warnings.pl:1.5 Sun Apr 4 05:09:58 2004
+++ kaffe/scripts/sort-warnings.pl Fri Dec 10 02:31:55 2004
@@ -6,7 +6,7 @@
my $prefix_regex = qr/^([^:\n]+):(\d+): warning: /m;
my $prefix_regex_noparam = qr/^(?:[^:\n]+):(?:\d+): warning: /m;
my $prefix_regex2 = qr/^([^:\n]+):(\d+):(?:\d+): warning: /m;
-my $jikes_prefix = qr/([^:\n]+):(\d+):\d+:\d+:\d+: Semantic Warning: /m;
+my $jikes_prefix = qr/([^:\n]+):(\d+):\d+:\d+:\d+: (?:Lexical|Semantic) (?:Caution|Warning): /m;
#<robilad> guilhem: ~3000 unique ones with -Wall -W -Wtraditional -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual
# -Wcast-align -Wwrite-strings -Wconversion -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes
@@ -18,14 +18,25 @@
'java:public-in-interface' => qr/${jikes_prefix}The use of the "([^"]+)" modifier in this context is redundant and strongly discouraged as a matter of style.$/m,
'java:exception-superclass' => qr/${jikes_prefix}The listing of type "([^"]+)" in the throws clause is not necessary, since its superclass, "([^"]+)", is also listed.$/m,
'java:override-default' => qr/${jikes_prefix}Method "([^"]+)" in class "([^"]+)" does not override or hide the corresponding method with default access in class "([^"]+)".$/m,
- 'java:invalid-zip' => qr/${jikes_prefix}The file "([^"]+)" does not exist or else is not a valid zip file.$/m,
+ 'java:invalid-zip:1' => qr/${jikes_prefix}The file "([^"]+)" does not exist or else is not a valid zip file.$/m,
+ 'java:invalid-zip:2' => qr/${jikes_prefix}I\/O warning: "No such file or directory" while trying to open (.*)\.$/m,
+ 'java:negative-shift-count' => qr/${jikes_prefix}The shift count (-\d+) is negative; it will be masked to the appropriate width and behave as a positive shift count.$/m,
+ 'java:large-shift-count' => qr/${jikes_prefix}The shift count of (\d+) is >= the (\d+-bit) width of the type.$/m,
+ 'java:method-is-constructor' => qr/${jikes_prefix}The name of this method "([^"]+)" matches the name of the containing class. However, the method is not a constructor since its declarator is qualified with a type.$/m,
+ 'java:use-parens' => qr/${jikes_prefix}Suggest parentheses around assignment used as truth value.$/m,
+ 'java:instance-static-access:1' => qr/${jikes_prefix}Invoking the class method "([^"]+)" via an instance is discouraged because the method invoked will be the one in the variable's declared type, not the instance's dynamic type.$/m,
+ 'java:instance-static-access:2' => qr/${jikes_prefix}Accessing the class field "([^"]+)" via an instance is discouraged because the field accessed will be the one in the variable's declared type, not the instance's dynamic type.$/m,
+ 'java:static-variable-init' => qr/${jikes_prefix}Final field "([^"]+)" is initialized with a constant expression and could be made static to save space.$/m,
+ 'java:lexical:invalid-char' => qr/${jikes_prefix}The use of "([^"]+)" in an identifier, while legal, is strongly discouraged, since it can conflict with compiler-generated names. If you are trying to access a nested type, use "([^"]+)" instead of "(?:[^"]+)".$/m,
'missing-prototypes-mismatch' => qr/${prefix_regex}no previous prototype for `([^']+)'\n${prefix_regex_noparam}type mismatch with previous implicit declaration\n${prefix_regex}previous implicit declaration of `[^']+'\n${prefix_regex_noparam}`[^']+' was previously implicitly declared to return `([^']+)'$/m,
- '-Wformat-nonliteral' => qr/${prefix_regex}format not a string literal, argument types not checked$/m,
+ '-Wformat-nonliteral:1' => qr/${prefix_regex}format not a string literal, argument types not checked$/m,
+ '-Wformat-nonliteral:2' => qr/${prefix_regex}format not a string literal and no format arguments$/m,
'-Wimplicit-func-decl' => qr/${prefix_regex}implicit declaration of function `([^']+)'$/m,
'-Wmissing-braces' => qr/${prefix_regex}missing initializer\n${prefix_regex_noparam}\(near initialization for `([^']+)'\)$/m,
'-Wunused-parameter' => qr/${prefix_regex}unused parameter `([^']+)'$/m,
+ '-Wunused-variable' => qr/${prefix_regex}unused variable `([^']+)'$/m,
'-Wfloat-equal' => qr/${prefix_regex}comparing floating point with == or != is unsafe$/m,
@@ -39,20 +50,22 @@
'-Wcast-qual:3' => qr/${prefix_regex}passing arg (\d+) of `([^']+)' discards qualifiers from pointer target type$/m,
'-Wcast-qual:4' => qr/${prefix_regex}return discards qualifiers from pointer target type$/m,
'-Wcast-qual:5' => qr/${prefix_regex}assignment discards qualifiers from pointer target type$/m,
+ '-Wcast-qual:6' => qr/${prefix_regex}assignment makes qualified function pointer from unqualified$/m,
'-Wcast-align:1' => qr/${prefix_regex}padding struct size to alignment boundary$/m,
'-Wconversion:1' => qr/${prefix_regex}negative integer implicitly converted to unsigned type$/m,
- '-Wconversion:2' => qr/${prefix_regex}passing arg (\d+) of `([^']+) makes (pointer) from (integer) without a cast$/m,
- '-Wconversion:3' => qr/${prefix_regex}passing arg (\d+) of `([^']+)' makes (pointer) from (integer) without a cast$/m,
+ '-Wconversion:2' => qr/${prefix_regex}passing arg (\d+) of `([^']+)' makes (integer|pointer) from (integer|pointer) without a cast$/m,
'-W:sign-compare' => qr/${prefix_regex}comparison of unsigned expression < 0 is always false$/m,
'-Wsign-compare:1' => qr/${prefix_regex}comparison between signed and unsigned$/m,
'-Wsign-compare:2' => qr/${prefix_regex}signed and unsigned type in conditional expression$/m,
'-Waggregate-return:1' => qr/${prefix_regex}function call has aggregate value$/m,
'-Waggregate-return:2' => qr/${prefix_regex}function returns an aggregate$/m,
- '-Wstrict-prototypes' => qr/${prefix_regex}non-static declaration for `([^']+)' follows static$/m,
+ '-Wstrict-prototypes:1' => qr/${prefix_regex}non-static declaration for `([^']+)' follows static$/m,
+ '-Wstrict-prototypes:2' => qr/${prefix_regex}function declaration isn't a prototype$/m,
'-Wmissing-prototypes' => qr/${prefix_regex}no previous prototype for `([^']+)'$/m,
'-Wmissing-declarations:1' => qr/${prefix_regex2}"([^"]+)" is not defined\s*$/m,
'-Wmissing-declarations:2' => qr/${prefix_regex2}`([^']+)' is not defined\s*$/m,
- '-Wmissing-noreturn' => qr/${prefix_regex}function might be possible candidate for attribute `(noreturn)'$/m,
+ '-Wmissing-noreturn:1' => qr/${prefix_regex}function might be possible candidate for attribute `(noreturn)'$/m,
+ '-Wmissing-noreturn:2' => qr/${prefix_regex}`([^']+)' function does return$/m,
'-Wmissing-format-attribute' => qr/${prefix_regex}function might be possible candidate for `printf' format attribute$/m,
'-Wpadded' => qr/${prefix_regex}padding struct to align `([^']+)'$/m,
'-Wredundant-decls' => qr/${prefix_regex}redundant redeclaration of `([^']+)' in same scope\n${prefix_regex}previous declaration of `[^']+'$/m,
@@ -68,13 +81,16 @@
'traditional-2' => qr/${prefix_regex}passing arg (\d+) of (?:`([^']+)'|(pointer to function)) as (unsigned|signed) due to prototype$/m,
'traditional-3' => qr/${prefix_regex}passing arg (\d+) of `([^']+)' as `([^']+)' rather than `([^']+)' due to prototype$/m,
'traditional-4' => qr/${prefix_regex}macro arg `([^']+)' would be stringified with -traditional\.$/m,
- 'traditional-5' => qr/${prefix_regex}passing arg (\d+) of `([^']+)' as (floating) rather than (integer) due to prototype$/m,
+ 'traditional-5' => qr/${prefix_regex}passing arg (\d+) of `([^']+)' as (floating|integer) rather than (floating|integer) due to prototype$/m,
+ 'traditional-6' => qr/${prefix_regex}passing arg (\d+) of (?:`([^']+)'|(pointer to function)) as `([^']+)' rather than `([^']+)' due to prototype$/m,
+ 'traditional-7' => qr/${prefix_regex}passing arg (\d+) of (?:`([^']+)'|(pointer to function)) from incompatible pointer type$/m,
- 'implicit-func-decl-mismatch' => qr/${prefix_regex}implicit declaration of function `([^']+)'$/m,
'deprecated-lvalue' => qr/${prefix_regex}use of (compound|conditional|cast) expressions as lvalues is deprecated$/m,
-
+ 'foo-1' => qr/${prefix_regex}`([^']+)' declared inside parameter list$/m,
+ 'foo-2' => qr/${prefix_regex}(assignment|initialization) from incompatible pointer type$/m,
+ 'foo-4' => qr/${prefix_regex}integer constant is too large for "([^"]+)" type$/m,
);
Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.3133 kaffe/ChangeLog:1.3134
--- kaffe/ChangeLog:1.3133 Fri Dec 10 02:30:08 2004
+++ kaffe/ChangeLog Fri Dec 10 02:31:49 2004
@@ -1,5 +1,10 @@
2004-12-09 Adam Heath <doogie at brainfood.com>
+ * scripts/sort-warnings.pl: Several new warnings detected, including
+ some from jikes.
+
+2004-12-09 Adam Heath <doogie at brainfood.com>
+
* configure, configure.ac: If --with-jikes is given with no value,
then use "$JIKESPROG +Pno-switchcheck +Pno-shadow +E."
More information about the kaffe
mailing list