6
6
* @problem.severity warning
7
7
* @tags reliability
8
8
* correctness
9
- * @problem.severity warning
10
9
* @sub-severity high
11
10
* @precision very-high
12
11
* @id py/inheritance/signature-mismatch
@@ -19,17 +18,18 @@ from FunctionValue base, PythonFunctionValue derived
19
18
where
20
19
not exists ( base .getACall ( ) ) and
21
20
not exists ( FunctionValue a_derived |
22
- a_derived .overrides ( base ) and
23
- exists ( a_derived .getACall ( ) )
21
+ a_derived .overrides ( base ) and
22
+ exists ( a_derived .getACall ( ) )
24
23
) and
25
24
not derived .getScope ( ) .isSpecialMethod ( ) and
26
25
derived .getName ( ) != "__init__" and
27
26
derived .isNormalMethod ( ) and
28
27
not derived .getScope ( ) .isSpecialMethod ( ) and
29
28
// call to overrides distributed for efficiency
30
29
(
31
- ( derived .overrides ( base ) and derived .minParameters ( ) > base .maxParameters ( ) )
30
+ derived .overrides ( base ) and derived .minParameters ( ) > base .maxParameters ( )
32
31
or
33
- ( derived .overrides ( base ) and derived .maxParameters ( ) < base .minParameters ( ) )
32
+ derived .overrides ( base ) and derived .maxParameters ( ) < base .minParameters ( )
34
33
)
35
- select derived , "Overriding method '" + derived .getName ( ) + "' has signature mismatch with $@." , base , "overridden method"
34
+ select derived , "Overriding method '" + derived .getName ( ) + "' has signature mismatch with $@." ,
35
+ base , "overridden method"
0 commit comments