summaryrefslogtreecommitdiffstats
path: root/perl_checker.src/parser.mly
Commit message (Collapse)AuthorAgeFilesLines
* handle "use Gtk2 -init"Pascal Rigaux2004-10-131-2/+6
|
* handle "use 5.008;"Pascal Rigaux2004-10-131-1/+1
|
* check lvalue validityPascal Rigaux2004-08-121-2/+2
|
* handle the following with no syntax errorPascal Rigaux2004-08-111-0/+1
| | | | | | | | | sub f() { 1; }
* enforce spaces around operator "." (string concat)Pascal Rigaux2004-08-111-1/+1
|
* partially fix { xxx() }->{$foo}Pascal Rigaux2004-08-111-3/+7
|
* better contextsPascal Rigaux2004-05-081-59/+65
|
* handle bad PO-: comments at the lexical level instead of doing it in the grammarPascal Rigaux2004-04-281-1/+0
| | | | | to have a better error message
* handle: -e "foo" && -f _Pascal Rigaux2004-04-281-0/+1
|
* allowPascal Rigaux2004-04-281-1/+1
| | | | | | | | | my ($a, $b,); since it can be useful in: my ($a, # dqsdsq $b, # qdfqsdf ) = @_;
* - do check_simple_pattern() directly in from_PATTERN()Pascal Rigaux2004-04-281-8/+8
| | | | | - don't die, log instead for some regexp expressions
* handle "format" perl instructionPascal Rigaux2004-01-221-4/+3
|
* warn when a PO: comment is not followed by N(...)Pascal Rigaux2004-01-051-0/+1
|
* use hash_ref() to check priority of the argumentsPascal Rigaux2004-01-051-22/+22
|
* disallowPascal Rigaux2003-12-161-11/+11
| | | | | | | - $a = (1, 2) - my $a = (1, 2) - my ($a, $b) = (1, 2, 3)
* nice error message instead of syntax error in: map { $_ } /re/ ? 1 : 2Pascal Rigaux2003-12-161-0/+1
|
* - drop internally operator "qw" by rewriting qw(...) into a list of stringsPascal Rigaux2003-12-161-1/+1
| | | | | | - as a side effect "foo" . qw(bar boo) is now detected - allow pop(@l) (with explicit parentheses)
* - add the tuple(...) contextPascal Rigaux2003-12-161-10/+10
| | | | | | - check that the value xxx in "... or xxx" is dropped - handle "... or ..., ..."
* - check the context on left side of =~Pascal Rigaux2003-12-151-3/+3
| | | | | - !xx has the new context bool
* allow to specify the return context of functions instead of always saying ↵Pascal Rigaux2003-12-151-2/+2
| | | | M_unknown
* fix build with new ocamlPascal Rigaux2003-11-101-1/+0
|
* allow: -f $a{b}->cPascal Rigaux2003-10-011-0/+3
|
* - disallow return(...), prefering return ...Pascal Rigaux2003-05-271-3/+3
| | | | | - P_call_no_paren has a lower priority than P_comma
* - enhance restricted_subscripted to correctly handle -e foo::bar()->{boo}Pascal Rigaux2003-05-271-1/+4
| | | | | - simplify a grammar rule
* simplifyPascal Rigaux2003-05-261-4/+2
|
* handle use foo() and use foo ("x", "y")Pascal Rigaux2003-05-261-1/+1
|
* correctly handle { Protocol => { val => 'Standard' } }Pascal Rigaux2003-05-261-0/+1
| | | | | (was broken due to the "arch => 1" hack)
* add a special case to handle "arch => 1" without going through word_alone()Pascal Rigaux2003-05-261-2/+3
|
* warn spurious space in ( 1, 2) which should be (1, 2)Pascal Rigaux2003-05-231-1/+1
|
* warn $o->method() which should be $o->methodPascal Rigaux2003-05-231-1/+1
|
* - suggest any instead of grep in scalar contextPascal Rigaux2003-05-231-1/+1
| | | | | - suggest foreach instead of map in empty context
* correctly warn about the missing space in "my ($a,$b, $c);"Pascal Rigaux2003-05-161-7/+7
|
* allow "*foo = sub {}" with no prototypePascal Rigaux2003-04-301-6/+6
|
* ensure return values are usedPascal Rigaux2003-04-291-39/+43
|
* allow "sub pkg::foo() { ...}"Pascal Rigaux2003-04-281-2/+2
|
* - handle empty prototypesPascal Rigaux2003-04-241-12/+22
| | | | | | | - check number of parameters in method calls (ignoring empty overloaded methods) - allow non-empty prototypes for methods not using @_
* forbid "unless (...) { ... } else { ... }" and "unless (...) { ... } elsif ↵Pascal Rigaux2003-04-151-1/+1
| | | | (...) { ... }
* add basic "type" checking (using a very liberal lattice)Pascal Rigaux2003-04-151-211/+216
|
* use new types to have stricter type checking (prior to adding maybe_context)Pascal Rigaux2003-04-131-278/+279
|
* allow 333 * `xxx` with no warningPascal Rigaux2003-04-111-1/+1
|
* handle "keys %pkg::" (twas broken because keys() is now a ONE_SCALAR_PARA)Pascal Rigaux2003-04-101-0/+1
|
* correctly (in Perl way) handle priority for some special unary functions ↵Pascal Rigaux2003-04-101-9/+9
| | | | (length, exists, ref)
* - $foo =~ /^dhcp$/ is better written $foo eq 'dhcp'Pascal Rigaux2003-04-011-2/+2
| | | | | - warn "grep(&f, ...)", use "grep { f } ..." instead
* - warn !($var =~ /.../)Pascal Rigaux2003-04-011-5/+5
| | | | | | - warn $a & 0xff == $b better written $a & (0xff == $b) - "not" should not be used, use "!" instead
* - warn <always true> || ... (eg: 1 || foo())Pascal Rigaux2003-04-011-4/+4
| | | | | | | | | - warn <always false> || ... - warn <always true> && ... - warn <always false> && ... - suggest @$foo instead of @{$foo} - suggest $foo->[0] instead of ${$foo}[0]
* - make "please don't use prototype pre-declaration" a warningPascal Rigaux2003-04-011-2/+11
| | | | | - make a warning for unary plus instead of a "syntax error"
* allow "use foo()"Pascal Rigaux2003-02-241-0/+1
|
* handle ${foo} (including "${foo}bar")Pascal Rigaux2003-02-121-5/+5
|
* warn when using $l[$#l], advice $l[-1] insteadPascal Rigaux2003-02-051-10/+10
|
* allow -x with no parameter, but advise not to use itPascal Rigaux2003-02-051-0/+1
|