diff options
author | Pascal Rigaux <pixel@mandriva.com> | 2004-10-13 07:53:24 +0000 |
---|---|---|
committer | Pascal Rigaux <pixel@mandriva.com> | 2004-10-13 07:53:24 +0000 |
commit | 9f11e76a84d3fd1ebacbe0f5f1db801a014e236b (patch) | |
tree | 72a4f56276a7bb47e9a3994eabb09cba7656d838 /perl_checker.src/lexer.mll | |
parent | b0e4ee5ab1b2e5beb409cd4e002d55b8d721c49f (diff) | |
download | perl_checker-9f11e76a84d3fd1ebacbe0f5f1db801a014e236b.tar perl_checker-9f11e76a84d3fd1ebacbe0f5f1db801a014e236b.tar.gz perl_checker-9f11e76a84d3fd1ebacbe0f5f1db801a014e236b.tar.bz2 perl_checker-9f11e76a84d3fd1ebacbe0f5f1db801a014e236b.tar.xz perl_checker-9f11e76a84d3fd1ebacbe0f5f1db801a014e236b.zip |
handle qx(...) and qx{...} with a warning
Diffstat (limited to 'perl_checker.src/lexer.mll')
-rw-r--r-- | perl_checker.src/lexer.mll | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/perl_checker.src/lexer.mll b/perl_checker.src/lexer.mll index f3b56e0..e21dd32 100644 --- a/perl_checker.src/lexer.mll +++ b/perl_checker.src/lexer.mll @@ -413,9 +413,13 @@ let set_delimit_char_open lexbuf op = let char_close = match char_open with | '(' -> ')' - | '{' -> warn lexbuf ("don't use " ^ op ^ "{...}, use " ^ op ^ "(...) instead") ; '}' + | '{' -> '}' | _ -> internal_error "set_delimit_char_open" in + if op = "qx" then + warn lexbuf (Printf.sprintf "don't use qx%c...%c, use `...` instead" char_open char_close) + else if char_open = '{' then + warn lexbuf ("don't use " ^ op ^ "{...}, use " ^ op ^ "(...) instead"); delimit_char_open := char_open; delimit_char_close := char_close } @@ -764,6 +768,7 @@ rule token = parse COMMAND_STRING(s, pos) } | "q" pattern_open { set_delimit_char_open lexbuf "q"; raw_ins_to_string qstring lexbuf } | "qq" pattern_open { set_delimit_char_open lexbuf "qq"; ins_to_string qqstring lexbuf } +| "qx" pattern_open { set_delimit_char_open lexbuf "qx"; ins_to_string qqstring lexbuf } | "qw" pattern_open { set_delimit_char_open lexbuf "qw"; let s, pos = raw_ins qstring lexbuf in QUOTEWORDS(s, pos) } | "\n__END__" [^ '0'-'9' 'A'-'Z' 'a'-'z' '_'] |