Uploaded image for project: 'Harmony'
  1. Harmony
  2. HARMONY-780

[classlib][util] unexpected ClassCastException for java.util.TreeMap.put(Object, new Object)

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Classlib
    • Labels:
      None

      Description

      The Harmony method java.util.TreeMap.put(Object, new Object) throws unexpected ClassCastException while according to spec should return null.

      ====================== test.java ========================
      import java.util.TreeMap;

      public class test {

      public static void main (String[] args)

      { System.out.println("" + new TreeMap().put(new Object(), new Object())); }


      }
      =====================================================

      Output:
      C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -showversion test
      java version "1.5.0"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
      BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))

      null

      C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -showversion test
      java version 1.5 (subset)

      (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
      Exception in thread "main" java.lang.ClassCastException: java.lang.Object incompatible with java.lang.Comparable
      at java.util.TreeMap.toComparable(TreeMap.java:79)
      at java.util.TreeMap.rbInsert(TreeMap.java:1230)
      at java.util.TreeMap.put(TreeMap.java:1174)
      at test.main(test.java:6)

        Attachments

        1. 780_new.diff
          2 kB
          spark shen
        2. TreeMap.diff
          0.5 kB
          Igor V. Stolyarov
        3. TreeMapTest.patch
          0.6 kB
          Vladimir Ivanov

          Activity

            People

            • Assignee:
              paulex Paulex Yang
              Reporter:
              vladimir Vladimir Ivanov
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: