Hi everyone, I moved the GenericsVisitor earlier in the compilation process. This means that errors involving class usage but supplying an incorrect number of type parameters, e.g. List<Integer, Date, String> or HashMap<Long> or invalid Diamond operator usage will now be flagged earlier. This is nice because we had other parts of the compiler which used to run prior to the generics visitor that assumed that such information was correct and would fail with an ArrayIndexOutOfBoundsException. In those circumstances we now get a nicer error message.
The flip side is that if anyone had a DSL that relied on such invalid syntax and had a transform that corrected the errors that ran in the early stages of the compiler, then it will likely now run after the GenericsVisitor which means the error will already be flagged. I am not aware of any such usage of invalid Groovy syntax being relied upon but if anyone is in that position, now is the time to let us know. You can still use a global transform but there might be other workarounds possible if you let us know the circumstances. For further details see: https://issues.apache.org/jira/browse/GROOVY-7865 Cheers, Paul.