summaryrefslogtreecommitdiffstats
path: root/libjava/classpath/java/lang/Enum.java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/classpath/java/lang/Enum.java')
-rw-r--r--libjava/classpath/java/lang/Enum.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/libjava/classpath/java/lang/Enum.java b/libjava/classpath/java/lang/Enum.java
index f141619be4d..fa217bb67a6 100644
--- a/libjava/classpath/java/lang/Enum.java
+++ b/libjava/classpath/java/lang/Enum.java
@@ -97,9 +97,12 @@ public abstract class Enum<T extends Enum<T>>
try
{
+ // XXX We should not use getDeclaredField, because it does
+ // an unnecessary security check.
Field f = etype.getDeclaredField(s);
if (! f.isEnumConstant())
throw new IllegalArgumentException(s);
+ Class.setAccessible(f);
return (S) f.get(null);
}
catch (NoSuchFieldException exception)
@@ -220,4 +223,14 @@ public abstract class Enum<T extends Enum<T>>
k = k.getSuperclass();
return k;
}
+
+ /**
+ * Enumerations can not have finalization methods.
+ *
+ * @since 1.6
+ */
+ protected final void finalize()
+ {
+ }
+
}
OpenPOWER on IntegriCloud