COMPILER: improve parser

fix parsing of in case of restricted token, ie return :
```
return
a+b
```

fix parsing of 
```
if(true) fun(args)
else ...
```

I would like to discuss how the following point could be achieve :
```
1. When, as the program is parsed from left to right, a token (called the offending token)
    is encountered that is not allowed by any production of the grammar, then a
    semicolon is automatically inserted before the offending token if one or more
    of the following conditions is true:
      - The offending token is separated from the previous token by at least one LineTerminator.
```