X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/test/PHPParser.jj b/net.sourceforge.phpeclipse/src/test/PHPParser.jj index 0637cf1..16847d8 100644 --- a/net.sourceforge.phpeclipse/src/test/PHPParser.jj +++ b/net.sourceforge.phpeclipse/src/test/PHPParser.jj @@ -2029,18 +2029,23 @@ StringLiteral evaluableString() : FunctionCall Arguments(final Expression func) : { Expression[] args = null; -final Token token; +final Token token,lparen; } { - [ args = ArgumentList() ] + lparen = [ args = ArgumentList() ] try { token = {return new FunctionCall(func,args,token.sourceEnd);} } catch (ParseException e) { errorMessage = "unexpected token : '"+ e.currentToken.next.image +"', ')' expected to close the argument list"; errorLevel = ERROR; - errorStart = args[args.length-1].sourceEnd+1; - errorEnd = args[args.length-1].sourceEnd+1; + if (args == null) { + errorStart = lparen.sourceEnd+1; + errorEnd = lparen.sourceEnd+2; + } else { + errorStart = args[args.length-1].sourceEnd+1; + errorEnd = args[args.length-1].sourceEnd+2; + } processParseExceptionDebug(e); } {return new FunctionCall(func,args,args[args.length-1].sourceEnd);} @@ -2851,7 +2856,6 @@ Expression SwitchLabel() : token = <_DEFAULT> try { - {return null;} } catch (ParseException e) { errorMessage = "':' expected after 'default' keyword"; errorLevel = ERROR; @@ -2859,6 +2863,7 @@ Expression SwitchLabel() : errorEnd = token.sourceEnd+1; processParseExceptionDebug(e); } + {return null;} } Break BreakStatement() :