[ 
https://issues.apache.org/jira/browse/GROOVY-7763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15159182#comment-15159182
 ] 

Jochen Theodorou commented on GROOVY-7763:
------------------------------------------

to explain the problem a bit more.... If you use the literal list, you cannot 
specify the type of it correctly, thus we have special logic for the literal 
list to obey an relaxed check. Then you can do List<Y> l = [new X()], with X 
extends Y, even though this would normally fail. And it looks like some of the 
numerous changes been made changed also the behaviour of these literals. And 
while we do have special logic for the assignment case, we had next to no logic 
for the return case at all. After GROOVY-7598 we have now logic for the return 
case, but no special handling of literal lists (and I assume we have the same 
problem with maps). So in other words, this must be added. 

> Various problems with type inference in Groovy 2.4.6
> ----------------------------------------------------
>
>                 Key: GROOVY-7763
>                 URL: https://issues.apache.org/jira/browse/GROOVY-7763
>             Project: Groovy
>          Issue Type: Bug
>    Affects Versions: 2.4.6
>            Reporter: Graeme Rocher
>            Priority: Critical
>
> After trying to upgrade Grails to Groovy 2.4.6 there are numerous problems 
> with @CompileStatic and type inference with Maps and Lists. If I had seen the 
> vote for the release in time I would have tested and voted -1, so sorry for 
> only reporting this afterwards.
> This commits shows the changes I had to make in order to get Grails to 
> compile with Groovy 2.4.6:
> https://github.com/grails/grails-core/commit/a6d70aaf7925fb7f2e847a803a8e1f3c95bf8cf8
> You can see for example that previously returning a list initialised with 
> variables of the correct type compiled, but no longer does:
> https://github.com/grails/grails-core/commit/a6d70aaf7925fb7f2e847a803a8e1f3c95bf8cf8#diff-3092a650525dc131a0394eca4282362bL35
> Also empty lists and maps no longer seem to compile. See:
> https://github.com/grails/grails-core/commit/a6d70aaf7925fb7f2e847a803a8e1f3c95bf8cf8#diff-07f8418b033d870eee3c1cee97e44f4cL121
> https://github.com/grails/grails-core/commit/a6d70aaf7925fb7f2e847a803a8e1f3c95bf8cf8#diff-15a1d1d639cada3a0c85c7200547db02L40



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to