This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Patch: FYI: Classpath recompare
- From: Tom Tromey <tromey at redhat dot com>
- To: Java Patch List <java-patches at gcc dot gnu dot org>
- Cc: Gcc Patch List <gcc-patches at gcc dot gnu dot org>
- Date: 14 Nov 2001 15:11:08 -0700
- Subject: Patch: FYI: Classpath recompare
- Reply-to: tromey at redhat dot com
Another Classpath comparison update.
Tom
Index: ChangeLog
* libgcj-classpath-compare.html: Rebuilt.
Index: libgcj-classpath-compare.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/java/libgcj-classpath-compare.html,v
retrieving revision 1.19
diff -u -r1.19 libgcj-classpath-compare.html
--- libgcj-classpath-compare.html 2001/11/14 18:29:40 1.19
+++ libgcj-classpath-compare.html 2001/11/14 21:46:26
@@ -36,7 +36,6 @@
<tr> <td>java.lang.Character</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> </tr>
<tr> <td>java.lang.Class</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> <td bgcolor="#eeeeaa">No</td> </tr>
<tr> <td>java.lang.ClassLoader</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> </tr>
-<tr> <td>java.lang.Double</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.lang.Double.diff">Diff</a></td> </tr>
<tr> <td>java.lang.EcosProcess</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> <td bgcolor="#eeeeaa">No</td> </tr>
<tr> <td>java.lang.Math</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> </tr>
<tr> <td>java.lang.Object</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> </tr>
@@ -51,13 +50,11 @@
<tr> <td>java.lang.VMClassLoader</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> <td bgcolor="#eeeeaa">No</td> </tr>
<tr> <td>java.lang.VMSecurityManager</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> <td bgcolor="#eeeeaa">No</td> </tr>
<tr> <td>java.lang.ref.Reference</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.lang.ref.Reference.diff">Diff</a></td> </tr>
-<tr> <td>java.lang.reflect.AccessibleObject</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.lang.reflect.AccessibleObject.diff">Diff</a></td> </tr>
<tr> <td>java.lang.reflect.Array</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> </tr>
<tr> <td>java.lang.reflect.Constructor</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> <td bgcolor="#eeeeaa">No</td> </tr>
<tr> <td>java.lang.reflect.Field</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> <td bgcolor="#eeeeaa">No</td> </tr>
<tr> <td>java.lang.reflect.InvocationHandler</td> <td bgcolor="#eeeeaa">No</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> </tr>
<tr> <td>java.lang.reflect.InvocationTargetException</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.lang.reflect.InvocationTargetException.diff">Diff</a></td> </tr>
-<tr> <td>java.lang.reflect.Member</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.lang.reflect.Member.diff">Diff</a></td> </tr>
<tr> <td>java.lang.reflect.Method</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> <td bgcolor="#eeeeaa">No</td> </tr>
<tr> <td>java.lang.reflect.Modifier</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.lang.reflect.Modifier.diff">Diff</a></td> </tr>
<tr> <td>java.lang.reflect.Proxy</td> <td bgcolor="#eeeeaa">No</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> </tr>
@@ -94,9 +91,7 @@
<tr> <td>java.util.BasicMapEntry</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.BasicMapEntry.diff">Diff</a></td> </tr>
<tr> <td>java.util.BitSet</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.BitSet.diff">Diff</a></td> </tr>
<tr> <td>java.util.Collections</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.Collections.diff">Diff</a></td> </tr>
-<tr> <td>java.util.ConcurrentModificationException</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.ConcurrentModificationException.diff">Diff</a></td> </tr>
<tr> <td>java.util.Dictionary</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.Dictionary.diff">Diff</a></td> </tr>
-<tr> <td>java.util.EmptyStackException</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.EmptyStackException.diff">Diff</a></td> </tr>
<tr> <td>java.util.HashMap</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.HashMap.diff">Diff</a></td> </tr>
<tr> <td>java.util.HashSet</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.HashSet.diff">Diff</a></td> </tr>
<tr> <td>java.util.Hashtable</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.Hashtable.diff">Diff</a></td> </tr>
@@ -105,7 +100,6 @@
<tr> <td>java.util.LinkedHashSet</td> <td bgcolor="#eeeeaa">No</td> <td>Yes</td> <td bgcolor="#eeeeaa">No</td> </tr>
<tr> <td>java.util.LinkedList</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.LinkedList.diff">Diff</a></td> </tr>
<tr> <td>java.util.List</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.List.diff">Diff</a></td> </tr>
-<tr> <td>java.util.NoSuchElementException</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.NoSuchElementException.diff">Diff</a></td> </tr>
<tr> <td>java.util.Stack</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.Stack.diff">Diff</a></td> </tr>
<tr> <td>java.util.TimeZone</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.TimeZone.diff">Diff</a></td> </tr>
<tr> <td>java.util.TreeMap</td> <td>Yes</td> <td>Yes</td> <td bgcolor="#aaaaee"><a href="compare/java.util.TreeMap.diff">Diff</a></td> </tr>
Index: compare/java.lang.Double.diff
===================================================================
RCS file: java.lang.Double.diff
diff -N java.lang.Double.diff
--- compare/java.lang.Double.diff Wed Nov 14 13:46:28 2001
+++ /dev/null Tue May 5 13:32:27 1998
@@ -1,11 +0,0 @@
---- /home/tromey/gnu/egcs/classpath/classpath/java/lang/Double.java Wed Nov 14 09:08:21 2001
-+++ java/lang/Double.java Fri Oct 26 16:18:42 2001
-@@ -504,7 +504,7 @@
- * @see #NEGATIVE_INFINITY
- * @since 1.2
- */
-- public static native double parseDouble (String s)
-+ public native static double parseDouble (String s)
- throws NumberFormatException;
-
- /**
Index: compare/java.lang.reflect.AccessibleObject.diff
===================================================================
RCS file: java.lang.reflect.AccessibleObject.diff
diff -N java.lang.reflect.AccessibleObject.diff
--- compare/java.lang.reflect.AccessibleObject.diff Wed Nov 14 13:46:28 2001
+++ /dev/null Tue May 5 13:32:27 1998
@@ -1,193 +0,0 @@
---- /home/tromey/gnu/egcs/classpath/classpath/java/lang/reflect/AccessibleObject.java Sun Oct 21 10:39:27 2001
-+++ java/lang/reflect/AccessibleObject.java Mon Oct 15 16:07:13 2001
-@@ -1,5 +1,5 @@
- /* java.lang.reflect.AccessibleObject
-- Copyright (C) 2001 Free Software Foundation, Inc.
-+ Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
-
- This file is part of GNU Classpath.
-
-@@ -7,7 +7,7 @@
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
--
-+
- GNU Classpath is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-@@ -24,146 +24,54 @@
- This exception does not however invalidate any other reasons why the
- executable file might be covered by the GNU General Public License. */
-
--
-+
- package java.lang.reflect;
-
- /**
-- * This class is the superclass of various reflection classes, and
-- * allows sufficiently trusted code to bypass normal restrictions to
-- * do necessary things like invoke private methods outside of the
-- * class during Serialization. If you don't have a good reason
-- * to mess with this, don't try. Fortunately, there are adequate
-- * security checks before you can set a reflection object as accessible.
-- *
- * @author Tom Tromey <tromey@cygnus.com>
-- * @author Eric Blake <ebb9@email.byu.edu>
-- * @see Field
-- * @see Constructor
-- * @see Method
-- * @see ReflectPermission
-- * @since 1.2
-- * @status updated to 1.4
-+ * @date December 12, 1998
-+ */
-+/* Written using JDK 1.2 beta docs.
-+ * Status: Believed complete and correct.
- */
-+
- public class AccessibleObject
- {
-- /**
-- * True if this object is marked accessible, which means the reflected
-- * object bypasses normal security checks. <em>NOTE</em>Don't try messing
-- * with this by reflection. You'll mess yourself up.
-- */
-- // default visibility for use by inherited classes
-- boolean flag = false;
--
-- /**
-- * Only the three reflection classes that extend this can create an
-- * accessible object. This is not serializable for security reasons.
-- */
-- protected AccessibleObject()
-+ protected AccessibleObject ()
- {
-+ flag = false;
- }
-
-- /**
-- * Return the accessibility status of this object.
-- *
-- * @return true if this object bypasses security checks
-- */
-- public boolean isAccessible()
-+ public boolean isAccessible ()
- {
- return flag;
- }
-
-- /**
-- * Convenience method to set the flag on a number of objects with a single
-- * security check. If a security manager exists, it is checked for
-- * <code>ReflectPermission("suppressAccessChecks")</code>.<p>
-- *
-- * If <code>flag</code> is true, and the initial security check succeeds,
-- * this can still fail if a forbidden object is encountered, leaving the
-- * array half-modified. At the moment, the forbidden members are:<br>
-- * <ul>
-- * <li>Any Constructor for java.lang.Class</li>
-- * <li>Any AccessibleObject for java.lang.reflect.AccessibleObject
-- * (this is not specified by Sun, but it closes a big security hole
-- * where you can use reflection to bypass the security checks that
-- * reflection is supposed to provide)</li>
-- * </ul>
-- * (Sun has not specified others, but good candidates might include
-- * ClassLoader, String, and such. However, the more checks we do, the
-- * slower this method gets).
-- *
-- * @param array the array of accessible objects
-- * @param flag the desired state of accessibility, true to bypass security
-- * @throws NullPointerException if array is null
-- * @throws SecurityException if the request is denied
-- * @see SecurityManager#checkPermission(java.security.Permission)
-- * @see RuntimePermission
-- */
-- public static void setAccessible(AccessibleObject[] array, boolean flag)
-+ public static void setAccessible (AccessibleObject[] array, boolean flag)
- {
-- checkPermission();
-- for (int i = 0; i < array.length; i++)
-- array[i].secureSetAccessible(flag);
-- }
--
-- /**
-- * Sets the accessibility flag for this reflection object. If a security
-- * manager exists, it is checked for
-- * <code>ReflectPermission("suppressAccessChecks")</code>.<p>
-- *
-- * If <code>flag</code> is true, and the initial security check succeeds,
-- * this will still fail for a forbidden object. At the moment, the
-- * forbidden members are:<br>
-- * <ul>
-- * <li>Any Constructor for java.lang.Class</li>
-- * <li>Any AccessibleObject for java.lang.reflect.AccessibleObject
-- * (this is not specified by Sun, but it closes a big security hole
-- * where you can use reflection to bypass the security checks that
-- * reflection is supposed to provide)</li>
-- * </ul>
-- * (Sun has not specified others, but good candidates might include
-- * ClassLoader, String, and such. However, the more checks we do, the
-- * slower this method gets).
-- *
-- * @param flag the desired state of accessibility, true to bypass security
-- * @throws NullPointerException if array is null
-- * @throws SecurityException if the request is denied
-- * @see SecurityManager#checkPermission(java.security.Permission)
-- * @see RuntimePermission
-- */
-- public void setAccessible(boolean flag)
-- {
-- checkPermission();
-- secureSetAccessible(flag);
-+ checkPermission ();
-+ // FIXME: check for invalid changes in the loop.
-+ // For instance, can't set this flag to true for a Constructor for
-+ // Class (example from the manual).
-+ for (int i = 0; i < array.length; ++i)
-+ array[i].flag = flag;
-+ }
-+
-+ public void setAccessible (boolean flag)
-+ {
-+ checkPermission ();
-+ // FIXME: check for invalid changes.
-+ // For instance, can't set this flag to true for a Constructor for
-+ // Class (example from the manual).
-+ this.flag = flag;
- }
-
-- /**
-- * Performs the specified security check, for
-- * <code>ReflectPermission("suppressAccessChecks")</code>.
-- *
-- * @throws SecurityException if permission is denied
-- */
-- private static final void checkPermission()
-+ private static final void checkPermission ()
- {
- SecurityManager sm = System.getSecurityManager();
- if (sm != null)
-- sm.checkPermission(new ReflectPermission("suppressAccessChecks"));
-+ sm.checkPermission (new ReflectPermission ("suppressAccessChecks"));
- }
-
-- /**
-- * Performs the actual accessibility change, this must always be invoked
-- * after calling checkPermission.
-- *
-- * @param flag the desired status
-- * @throws SecurityException if flag is true and this is one of the
-- * forbidden members mentioned in {@link setAccessible(boolean)}.
-- */
-- private final void secureSetAccessible(boolean flag)
-- {
-- if (flag &&
-- ((this instanceof Constructor
-- && ((Constructor) this).getDeclaringClass() == Class.class)
-- || ((Member) this).getDeclaringClass() == AccessibleObject.class))
-- throw new SecurityException("Cannot make object accessible: " + this);
-- this.flag = flag;
-- }
-+ private boolean flag;
- }
Index: compare/java.lang.reflect.Member.diff
===================================================================
RCS file: java.lang.reflect.Member.diff
diff -N java.lang.reflect.Member.diff
--- compare/java.lang.reflect.Member.diff Wed Nov 14 13:46:28 2001
+++ /dev/null Tue May 5 13:32:27 1998
@@ -1,129 +0,0 @@
---- /home/tromey/gnu/egcs/classpath/classpath/java/lang/reflect/Member.java Sun Oct 21 10:39:27 2001
-+++ java/lang/reflect/Member.java Sun Sep 30 12:18:30 2001
-@@ -1,4 +1,4 @@
--/* java.lang.reflect.Member - common query methods in reflection
-+/* java.lang.reflect.Member
- Copyright (C) 1998, 1999, 2001 Free Software Foundation, Inc.
-
- This file is part of GNU Classpath.
-@@ -7,7 +7,7 @@
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
--
-+
- GNU Classpath is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-@@ -27,63 +27,55 @@
-
- package java.lang.reflect;
-
-+/* Written using "Java Class Libraries", 2nd edition.
-+ * Status: Believed complete and correct.
-+ */
-+
- /**
-- * Member is an interface that represents any member of a class (field or
-- * method) or a constructor. You can get information about the declaring
-- * class, name or modifiers of the member with this interface.
-+ * Member is an interface that represents any member of a class.
-+ * i.e. a field, a method or a constructor.
-+ * You can get information about the declaring class, name or modifiers of
-+ * the member with this interface.
- *
-- * @author John Keiser
-- * @author Per Bothner <bothner@cygnus.com>
-- * @author Eric Blake <ebb9@email.byu.edu>
-- * @see Class
-- * @see Field
-- * @see Method
-- * @see Constructor
-- * @since 1.1
-- * @status updated to 1.4
-+ * @author John Keiser
-+ * @author Per Bothner <bothner@cygnus.com>
- */
--public interface Member
--{
-- /**
-- * Represents all members, whether public, private, protected or
-- * package-protected, but only which are declared in this class.
-- * Used in SecurityManager.checkMemberAccess() to determine the
-- * type of members to access.
-- * @see SecurityManager#checkMemberAccess()
-- */
-- int DECLARED = 1;
--
-- /**
-- * Represents public members only, but includes all inherited members.
-- * Used in SecurityManager.checkMemberAccess() to determine the type of
-- * members to access.
-- * @see SecurityManager#checkMemberAccess()
-- */
-- int PUBLIC = 0;
--
-- /**
-- * Gets the class that declared this member. This is not the class where
-- * this method was called, or even the class where this Member object
-- * came to life, but the class that declares the member this represents.
-- *
-- * @return the class that declared this member
-- */
-- Class getDeclaringClass();
--
-- /**
-- * Gets the simple name of this member. This will be a valid Java
-- * identifier, with no qualification.
-- *
-- * @return the name of this member
-- */
-- String getName();
--
-- /**
-- * Gets the modifiers this member uses. Use the <code>Modifier</code>
-- * class to interpret the values.
-- *
-- * @return an integer representing the modifiers to this Member
-- * @see Modifier
-- */
-- int getModifiers();
-+public interface Member {
-+ /**
-+ * Represents all members, whether public, private, protected or
-+ * package-protected.
-+ * Used in java.lang.SecurityManager.checkMemberAccess() to determine the
-+ * type of members to access.
-+ */
-+ static final int DECLARED = 1;
-+
-+ /**
-+ * Represents public members only. Used inr
-+ * java.lang.SecurityManager.checkMemberAccess() to determine the type of
-+ * members to access.
-+ */
-+ static final int PUBLIC = 0;
-+
-+ /**
-+ * Gets the class that declared this member.
-+ * <STRONG>It is unclear whether this returns the class that actually
-+ * syntactically declared the member, or the class where the
-+ * <code>Member</code> object was gotten from.</STRONG>
-+ * @return the class that declared this member.
-+ */
-+ Class getDeclaringClass();
-+
-+ /**
-+ * Gets the modifiers this member uses. Use the <code>Modifier</code>
-+ * class to interpret the values.
-+ * @see Modifier
-+ * @return an integer representing the modifiers to this Member.
-+ */
-+ int getModifiers();
-+
-+ /**
-+ * Gets the name of this member.
-+ * @return the name of this member.
-+ */
-+ String getName();
- }
Index: compare/java.util.ConcurrentModificationException.diff
===================================================================
RCS file: java.util.ConcurrentModificationException.diff
diff -N java.util.ConcurrentModificationException.diff
--- compare/java.util.ConcurrentModificationException.diff Wed Nov 14 13:46:28 2001
+++ /dev/null Tue May 5 13:32:27 1998
@@ -1,51 +0,0 @@
---- /home/tromey/gnu/egcs/classpath/classpath/java/util/ConcurrentModificationException.java Mon Oct 22 22:24:19 2001
-+++ java/util/ConcurrentModificationException.java Tue Oct 16 09:14:34 2001
-@@ -30,6 +30,7 @@
- /* Written using "Java Class Libraries", 2nd edition, ISBN 0-201-31002-3
- * "The Java Language Specification", ISBN 0-201-63451-1
- * plus online API docs for JDK 1.2 beta from http://www.javasoft.com.
-+ * Status: Believed complete and correct.
- */
-
- /**
-@@ -37,29 +38,15 @@
- * a modification has been made to a data structure when this is not allowed,
- * such as when a collection is structurally modified while an Iterator is
- * operating over it. In cases where this can be detected, a
-- * ConcurrentModificationException will be thrown. An Iterator that detects
-- * this condition is referred to as fail-fast. Notice that this can occur
-- * even in single-threaded designs, if you call methods out of order.
-+ * ConcurrentModificationException will be thrown. An Iterator that detects this
-+ * condition is referred to as fail-fast.
- *
- * @author Warren Levy <warrenl@cygnus.com>
-- * @author Eric Blake <ebb9@email.byu.edu>
-- * @see Collection
-- * @see Iterator
-- * @see ListIterator
-- * @see Vector
-- * @see LinkedList
-- * @see HashSet
-- * @see Hashtable
-- * @see TreeMap
-- * @see AbstractList
-+ * @date September 2, 1998.
- * @since 1.2
-- * @status updated to 1.4
- */
- public class ConcurrentModificationException extends RuntimeException
- {
-- /**
-- * Compatible with JDK 1.2.
-- */
- private static final long serialVersionUID = -3666751008965953603L;
-
- /**
-@@ -67,6 +54,7 @@
- */
- public ConcurrentModificationException()
- {
-+ super();
- }
-
- /**
Index: compare/java.util.EmptyStackException.diff
===================================================================
RCS file: java.util.EmptyStackException.diff
diff -N java.util.EmptyStackException.diff
--- compare/java.util.EmptyStackException.diff Wed Nov 14 13:46:28 2001
+++ /dev/null Tue May 5 13:32:27 1998
@@ -1,35 +0,0 @@
---- /home/tromey/gnu/egcs/classpath/classpath/java/util/EmptyStackException.java Mon Oct 22 22:24:19 2001
-+++ java/util/EmptyStackException.java Tue Oct 16 09:14:34 2001
-@@ -30,6 +30,7 @@
- /* Written using "Java Class Libraries", 2nd edition, ISBN 0-201-31002-3
- * "The Java Language Specification", ISBN 0-201-63451-1
- * plus online API docs for JDK 1.2 beta from http://www.javasoft.com.
-+ * Status: Believed complete and correct.
- */
-
- /**
-@@ -37,16 +38,10 @@
- * or otherwise access elements from an empty stack.
- *
- * @author Warren Levy <warrenl@cygnus.com>
-- * @author Eric Blake <ebb9@email.byu.edu>
-- * @see Stack
-- * @since 1.0
-- * @status updated to 1.4
-+ * @date September 2, 1998.
- */
- public class EmptyStackException extends RuntimeException
- {
-- /**
-- * Compatible with JDK 1.0.
-- */
- private static final long serialVersionUID = 5084686378493302095L;
-
- /**
-@@ -54,5 +49,6 @@
- */
- public EmptyStackException()
- {
-+ super();
- }
- }
Index: compare/java.util.NoSuchElementException.diff
===================================================================
RCS file: java.util.NoSuchElementException.diff
diff -N java.util.NoSuchElementException.diff
--- compare/java.util.NoSuchElementException.diff Wed Nov 14 13:46:28 2001
+++ /dev/null Tue May 5 13:32:27 1998
@@ -1,48 +0,0 @@
---- /home/tromey/gnu/egcs/classpath/classpath/java/util/NoSuchElementException.java Mon Oct 22 22:24:19 2001
-+++ java/util/NoSuchElementException.java Tue Oct 16 09:14:34 2001
-@@ -30,32 +30,20 @@
- /* Written using "Java Class Libraries", 2nd edition, ISBN 0-201-31002-3
- * "The Java Language Specification", ISBN 0-201-63451-1
- * plus online API docs for JDK 1.2 beta from http://www.javasoft.com.
-+ * Status: Believed complete and correct.
- */
-
- /**
- * Exception thrown when an attempt is made to access an element that does not
-- * exist. This exception is thrown by the Enumeration, Iterator and
-- * ListIterator classes if the nextElement, next or previous method goes
-- * beyond the end of the list of elements that are being accessed. It is also
-- * thrown by Vector and Stack when attempting to access the first or last
-- * element of an empty collection.
-+ * exist. This exception is thrown by the Enumeration, Iterator and ListIterator
-+ * classes if the nextElement, next or previous method goes beyond the end of
-+ * the list of elements that are being accessed.
- *
- * @author Warren Levy <warrenl@cygnus.com>
-- * @author Eric Blake <ebb9@email.byu.edu>
-- * @see Enumeration
-- * @see Iterator
-- * @see ListIterator
-- * @see Enumeration#nextElement()
-- * @see Iterator#next()
-- * @see ListIterator#previous()
-- * @since 1.0
-- * @status updated to 1.4
-+ * @date September 2, 1998.
- */
- public class NoSuchElementException extends RuntimeException
- {
-- /**
-- * Compatible with JDK 1.0.
-- */
- private static final long serialVersionUID = 6769829250639411880L;
-
- /**
-@@ -63,6 +51,7 @@
- */
- public NoSuchElementException()
- {
-+ super();
- }
-
- /**