You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Jochen Kemnade (JIRA)" <ji...@apache.org> on 2017/05/17 08:57:04 UTC

[jira] [Comment Edited] (GROOVY-6396) same linkedlist code different behavior between groovy and java

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

Jochen Kemnade edited comment on GROOVY-6396 at 5/17/17 8:56 AM:
-----------------------------------------------------------------

I must admit that I'm not a fan of this change. It is a breaking change and breaks some of my scripts.
{code}
def list = []
list.push('foo')
list.push('bar')
assert list == ['foo', 'bar']
{code}
works with 2.4.x but fails with 2.5-alpha-1.


was (Author: jkemnade):
I must admin that I'm not a fan of this change. It is a breaking change and breaks some of my scripts.
{code}
def list = []
list.push('foo')
list.push('bar')
assert list == ['foo', 'bar']
{code}
works with 2.4.x but fails with 2.5-alpha-1.

> same linkedlist code different behavior between groovy and java
> ---------------------------------------------------------------
>
>                 Key: GROOVY-6396
>                 URL: https://issues.apache.org/jira/browse/GROOVY-6396
>             Project: Groovy
>          Issue Type: Bug
>          Components: jdk conflict
>            Reporter: boshi 
>            Assignee: Paul King
>              Labels: breaking
>             Fix For: 2.5.0-alpha-1
>
>
> I am using `linkedlist` as a stack in groovy 
> as doc says, `pop()` take elm from the first
>     Stack Method  Equivalent Deque Method  
>     push(e)       addFirst(e) 
>     pop()         removeFirst()
> so a `linkedlist` [1,2,3] should pop() 1 2 3
> and it does in Java, but does NOT in groovy. WHY?
> test below
> {code:title=A.java}
> import java.util.*;
>     
> public class A{
>     
>     
>     public static void main(String[] args){
>     
>         String[] x = "1/2/3/".split("/");
>         LinkedList <String> stack = new LinkedList<String>(Arrays.asList(x));
>         System.out.println(stack.pop());
>     }
> }
> {code}
> compile and run
> {noformat}
> $ javac A.java
> $ java A
> 1
> {noformat}
> runing in groovy
> {noformat}    
> $ ln -s A.java A.groovy
> $ groovy A.groovy
> 3
> {noformat}
> here is my java and groovy version
> {noformat}
> $ java -version
> java version "1.6.0_51"
> Java(TM) SE Runtime Environment (build 1.6.0_51-b11-457-11M4509)
> Java HotSpot(TM) 64-Bit Server VM (build 20.51-b01-457, mixed mode)
> $ groovy -version
> Groovy Version: 2.1.5 JVM: 1.6.0_51 Vendor: Apple Inc. OS: Mac OS X
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)