summaryrefslogtreecommitdiffstats
path: root/perl_checker.src/global_checks.ml
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2003-12-16 21:02:51 +0000
committerPascal Rigaux <pixel@mandriva.com>2003-12-16 21:02:51 +0000
commit86905dc107c2eaa070465392e3fd5df285204efe (patch)
tree3c6497d080017bcb49aa48d52e3b5f42f60358f3 /perl_checker.src/global_checks.ml
parent1d6df1fbb9a571f020c10d071ff4dba4f65a97f1 (diff)
downloadperl_checker-86905dc107c2eaa070465392e3fd5df285204efe.tar
perl_checker-86905dc107c2eaa070465392e3fd5df285204efe.tar.gz
perl_checker-86905dc107c2eaa070465392e3fd5df285204efe.tar.bz2
perl_checker-86905dc107c2eaa070465392e3fd5df285204efe.tar.xz
perl_checker-86905dc107c2eaa070465392e3fd5df285204efe.zip
- pop behaves just like shift
- check that the parameter to pop & shift is an array, and not more parameters are given
Diffstat (limited to 'perl_checker.src/global_checks.ml')
-rw-r--r--perl_checker.src/global_checks.ml3
1 files changed, 2 insertions, 1 deletions
diff --git a/perl_checker.src/global_checks.ml b/perl_checker.src/global_checks.ml
index 0c45783..7dc50a9 100644
--- a/perl_checker.src/global_checks.ml
+++ b/perl_checker.src/global_checks.ml
@@ -281,7 +281,8 @@ let check_variables vars t =
| Call(Deref(I_func, Ident(None, "require", _)), [Ident _]) -> Some vars
- | Call(Deref(I_func, Ident(None, "shift", pos)) as var, []) ->
+ | Call(Deref(I_func, Ident(None, "shift", pos)) as var, [])
+ | Call(Deref(I_func, Ident(None, "pop", pos)) as var, []) ->
check vars (Call(var, [ Deref(I_array, Ident(None, (if vars.is_toplevel then "ARGV" else "_"), pos)) ]))
| Call(Deref(context, (Ident(_, _, pos) as var)), para) ->