summaryrefslogtreecommitdiffstats
path: root/perl_checker.src/parser_helper.ml
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2003-04-01 15:18:29 +0000
committerPascal Rigaux <pixel@mandriva.com>2003-04-01 15:18:29 +0000
commite8d753659e1cf367aefc22c34babef895ea6c529 (patch)
tree88c5e85e2a526c13d88a6f96c35eab2f83aad671 /perl_checker.src/parser_helper.ml
parent9fe47f1dbcc891396a55c5fdc6f614f185a8ac03 (diff)
downloadperl-MDK-Common-e8d753659e1cf367aefc22c34babef895ea6c529.tar
perl-MDK-Common-e8d753659e1cf367aefc22c34babef895ea6c529.tar.gz
perl-MDK-Common-e8d753659e1cf367aefc22c34babef895ea6c529.tar.bz2
perl-MDK-Common-e8d753659e1cf367aefc22c34babef895ea6c529.tar.xz
perl-MDK-Common-e8d753659e1cf367aefc22c34babef895ea6c529.zip
- warn !($var =~ /.../)
- warn $a & 0xff == $b better written $a & (0xff == $b) - "not" should not be used, use "!" instead
Diffstat (limited to 'perl_checker.src/parser_helper.ml')
-rw-r--r--perl_checker.src/parser_helper.ml12
1 files changed, 12 insertions, 0 deletions
diff --git a/perl_checker.src/parser_helper.ml b/perl_checker.src/parser_helper.ml
index 7665eee..1f2a1c3 100644
--- a/perl_checker.src/parser_helper.ml
+++ b/perl_checker.src/parser_helper.ml
@@ -69,6 +69,7 @@ let is_always_false = function
| Num(n, _) -> float_of_string n = 0.
| Raw_string(s, _) -> s = ""
| String(l, _) -> l = []
+ | List [] -> true
| _ -> false
let not_complex e =
@@ -176,6 +177,9 @@ let rec prio_less = function
| _, P_tight_and -> true
| P_tight_and, _ -> false
+ | P_bit, P_bit -> true
+ | P_bit, _ -> false
+
| _, P_expr -> true
| P_expr, _ -> false
@@ -336,6 +340,14 @@ let check_scalar_subscripted (e, _) =
| Deref(I_scalar, Deref _) -> warn_rule "for complex dereferencing, use \"->\""
| _ -> ()
+let check_negatable_expr ((_, e), _) =
+ match un_parenthesize_full e with
+ | Call_op("m//", var :: _, _) when not (is_var_dollar_ var) ->
+ warn_rule "!($var =~ /.../) is better written $var !~ /.../"
+ | Call_op("!m//", var :: _, _) when not (is_var_dollar_ var) ->
+ warn_rule "!($var !~ /.../) is better written $var =~ /.../"
+ | _ -> ()
+
let check_ternary_paras(cond, a, b) =
let rec dont_need_short_circuit_rec = function
| Num _