diff options
author | Bryce McKinlay <bryce@albatross.co.nz> | 2001-02-14 05:32:31 +0000 |
---|---|---|
committer | Bryce McKinlay <bryce@gcc.gnu.org> | 2001-02-14 05:32:31 +0000 |
commit | 97a4d32ec6b8e1ea688b2ccd8ba54b8597227c79 (patch) | |
tree | 4f2a41fd0521db9e0327c39ffe966d5f227e8cf6 /libjava/java/util/TreeMap.java | |
parent | a142a996267f9c8adf239a565725174265c67749 (diff) | |
download | gcc-97a4d32ec6b8e1ea688b2ccd8ba54b8597227c79.zip gcc-97a4d32ec6b8e1ea688b2ccd8ba54b8597227c79.tar.gz gcc-97a4d32ec6b8e1ea688b2ccd8ba54b8597227c79.tar.bz2 |
natClass.cc (getSignature): Don't try to dereference param_types if it is null.
* java/lang/natClass.cc (getSignature): Don't try to dereference
param_types if it is null. Instead, take this to mean "no parameters".
* java/lang/TreeMap.java (TreeIterator.next): Throw
NoSuchElementException in preference to
ConcurrentModificationException.
(TreeIterator.remove): Throw IllegalStateException in preference to
ConcurrentModificationException.
(SubMap.firstKey): Do a better check for empty SubMap, and if it is,
throw a NoSuchElementException.
(SubMap.lastKey): Likewise.
From-SVN: r39658
Diffstat (limited to 'libjava/java/util/TreeMap.java')
-rw-r--r-- | libjava/java/util/TreeMap.java | 25 |
1 files changed, 11 insertions, 14 deletions
diff --git a/libjava/java/util/TreeMap.java b/libjava/java/util/TreeMap.java index ce11105..5057d16 100644 --- a/libjava/java/util/TreeMap.java +++ b/libjava/java/util/TreeMap.java @@ -56,7 +56,7 @@ import java.io.IOException; * * @author Jon Zeppieri * @author Bryce McKinlay - * @modified $Id: TreeMap.java,v 1.8 2000/10/26 10:19:01 bryce Exp $ + * @modified $Id: TreeMap.java,v 1.1 2001/02/14 04:44:21 bryce Exp $ */ public class TreeMap extends AbstractMap implements SortedMap, Cloneable, Serializable @@ -1194,10 +1194,10 @@ public class TreeMap extends AbstractMap public Object next() { - if (knownMod != TreeMap.this.modCount) - throw new ConcurrentModificationException(); if (next == nil) throw new NoSuchElementException(); + if (knownMod != TreeMap.this.modCount) + throw new ConcurrentModificationException(); Node n = next; // Check limit in case we are iterating through a submap. @@ -1217,11 +1217,10 @@ public class TreeMap extends AbstractMap public void remove() { - if (knownMod != TreeMap.this.modCount) - throw new ConcurrentModificationException(); - if (last == null) throw new IllegalStateException(); + if (knownMod != TreeMap.this.modCount) + throw new ConcurrentModificationException(); /* Object key = null; if (next != nil) @@ -1408,19 +1407,17 @@ public class TreeMap extends AbstractMap public Object firstKey() { Node node = lowestGreaterThan(minKey); - // Do a range check in case SubMap is empty. - if (keyInRange(node.key)) - return node.key; - return null; + if (node == nil || !keyInRange(node.key)) + throw new NoSuchElementException ("empty"); + return node.key; } public Object lastKey() { Node node = highestLessThan(maxKey); - // Do a range check in case SubMap is empty. - if (keyInRange(node.key)) - return node.key; - return null; + if (node == nil || !keyInRange(node.key)) + throw new NoSuchElementException ("empty"); + return node.key; } public SortedMap subMap(Object fromKey, Object toKey) |