[pmd-devel] pmd/rulesets controversial.xml,1.15,1.16
A source code analyzer
Brought to you by:
adangel,
juansotuyo
From: Tom C. <tom...@us...> - 2003-10-14 19:39:24
|
Update of /cvsroot/pmd/pmd/rulesets In directory sc8-pr-cvs1:/tmp/cvs-serv10673/rulesets Modified Files: controversial.xml Log Message: Applied patch [ 822280 ] UnusedModifierRule omits many cases Index: controversial.xml =================================================================== RCS file: /cvsroot/pmd/pmd/rulesets/controversial.xml,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** controversial.xml 4 Sep 2003 14:48:00 -0000 1.15 --- controversial.xml 14 Oct 2003 19:38:49 -0000 1.16 *************** *** 94,101 **** <rule name="UnusedModifier" ! message="Unused modifiers are, well, unused" class="net.sourceforge.pmd.rules.XPathRule"> <description> ! Unused modifiers are, well, unused. </description> <properties> --- 94,106 ---- <rule name="UnusedModifier" ! message="Avoid modifiers which are implied by the context" class="net.sourceforge.pmd.rules.XPathRule"> <description> ! Fields in interfaces are automatically public static final, and ! methods are public abstract. ! Classes or interfaces nested in an interface are automatically public ! and static (all nested interfaces are automatically static). ! For historical reasons, modifiers which are implied by the context ! are accepted by the compiler, but are superfluous. </description> <properties> *************** *** 103,107 **** <value> <![CDATA[ ! //InterfaceDeclaration//MethodDeclaration[@Public='true' or @Abstract = 'true'] ]]> </value> --- 108,116 ---- <value> <![CDATA[ ! //UnmodifiedInterfaceDeclaration//MethodDeclaration[@Public = 'true' or @Abstract = 'true'] ! | //UnmodifiedInterfaceDeclaration//FieldDeclaration[@Public = 'true' or @Static = 'true' or @Final = 'true'] ! | //UnmodifiedInterfaceDeclaration//NestedClassDeclaration[@Public = 'true' or @Static = 'true'] ! | //UnmodifiedInterfaceDeclaration//NestedInterfaceDeclaration[@Public = 'true' or @Static = 'true'] ! | //UnmodifiedClassDeclaration//NestedInterfaceDeclaration[@Static = 'true'] ]]> </value> *************** *** 113,116 **** --- 122,131 ---- public interface Foo { public abstract void bar(); // both abstract and public are ignored by the compiler + public static final int X = 0; // public, static, and final all ignored + public static class Bar {} // public, static ignored + public static interface Baz {} // ditto + } + public class Bar { + public static interface Baz {} // static ignored } ]]> |