Consider compact source file like:
```
void main() {
IO.println("Hello, world!");
}
```
The synthetic JCClassDecl wrapping the main method will have an end position -1. It should be evaluated if that's a reasonable value.
Also the JCCompilationUnit wrapping the class "inherits" the end position from the class, and hence gets -1 as well. This is clearly wrong.
```
void main() {
IO.println("Hello, world!");
}
```
The synthetic JCClassDecl wrapping the main method will have an end position -1. It should be evaluated if that's a reasonable value.
Also the JCCompilationUnit wrapping the class "inherits" the end position from the class, and hence gets -1 as well. This is clearly wrong.