diff options
author | Andrew John Hughes <gandalf@gcc.gnu.org> | 2012-03-23 15:19:26 +0000 |
---|---|---|
committer | Andrew John Hughes <gandalf@gcc.gnu.org> | 2012-03-23 15:19:26 +0000 |
commit | 0563022a206294757effa44686727bffc4f7c2bd (patch) | |
tree | febe3d4d4c0c994db223fee8e819bde6582494c9 /libjava/classpath/tools | |
parent | 21669dfe20db0246ece395db5558a081a5c7088f (diff) | |
download | gcc-0563022a206294757effa44686727bffc4f7c2bd.zip gcc-0563022a206294757effa44686727bffc4f7c2bd.tar.gz gcc-0563022a206294757effa44686727bffc4f7c2bd.tar.bz2 |
Merge GNU Classpath 0.99 into libjava.
From-SVN: r185741
Diffstat (limited to 'libjava/classpath/tools')
33 files changed, 80 insertions, 50 deletions
diff --git a/libjava/classpath/tools/Makefile.am b/libjava/classpath/tools/Makefile.am index f7ad91c..a4d48aa 100755 --- a/libjava/classpath/tools/Makefile.am +++ b/libjava/classpath/tools/Makefile.am @@ -141,7 +141,7 @@ EXTRA_DIST = toolwrapper.c gappletviewer.in gjarsigner.in gkeytool.in \ gtnameserv.in gorbd.in grmid.in grmic.in gjdoc.in # All our example java source files -TOOLS_JAVA_FILES = $(srcdir)/gnu/classpath/tools/*/*.java \ +TOOLS_JAVA_FILES = \ $(srcdir)/gnu/classpath/tools/*.java \ $(srcdir)/gnu/classpath/tools/*/*.java \ $(srcdir)/gnu/classpath/tools/*/*/*.java \ @@ -174,8 +174,8 @@ PROPERTY_FILES = $(srcdir)/external/asm/org/objectweb/asm/optimizer/shrink.prope $(srcdir)/resource/gnu/classpath/tools/keytool/messages.properties \ $(srcdir)/resource/gnu/classpath/tools/native2ascii/messages.properties \ $(srcdir)/resource/gnu/classpath/tools/appletviewer/messages.properties \ - $(srcdir)/resource/gnu/classpath/tools/common/Messages.properties \ - $(srcdir)/resource/gnu/classpath/tools/getopt/Messages.properties \ + $(srcdir)/resource/gnu/classpath/tools/common/messages.properties \ + $(srcdir)/resource/gnu/classpath/tools/getopt/messages.properties \ $(srcdir)/resource/gnu/classpath/tools/tnameserv/messages.properties \ $(srcdir)/resource/gnu/classpath/tools/jarsigner/messages.properties \ $(srcdir)/resource/gnu/classpath/tools/rmiregistry/messages.properties \ @@ -312,7 +312,9 @@ dist-hook: $(mkinstalldirs) $(distdir)/$$fdir; \ fi; \ echo "cp -p $$file $(distdir)/$$f"; \ - cp -p $$file $(distdir)/$$f; \ + if ! cp -p $$file $(distdir)/$$f; then \ + exit -1 ; \ + fi ; \ done # To generate the example zip just depend on the sources and ignore diff --git a/libjava/classpath/tools/Makefile.in b/libjava/classpath/tools/Makefile.in index d82fac6..2cf1a00 100644 --- a/libjava/classpath/tools/Makefile.in +++ b/libjava/classpath/tools/Makefile.in @@ -551,7 +551,7 @@ EXTRA_DIST = toolwrapper.c gappletviewer.in gjarsigner.in gkeytool.in \ # All our example java source files -TOOLS_JAVA_FILES = $(srcdir)/gnu/classpath/tools/*/*.java \ +TOOLS_JAVA_FILES = \ $(srcdir)/gnu/classpath/tools/*.java \ $(srcdir)/gnu/classpath/tools/*/*.java \ $(srcdir)/gnu/classpath/tools/*/*/*.java \ @@ -585,8 +585,8 @@ PROPERTY_FILES = $(srcdir)/external/asm/org/objectweb/asm/optimizer/shrink.prope $(srcdir)/resource/gnu/classpath/tools/keytool/messages.properties \ $(srcdir)/resource/gnu/classpath/tools/native2ascii/messages.properties \ $(srcdir)/resource/gnu/classpath/tools/appletviewer/messages.properties \ - $(srcdir)/resource/gnu/classpath/tools/common/Messages.properties \ - $(srcdir)/resource/gnu/classpath/tools/getopt/Messages.properties \ + $(srcdir)/resource/gnu/classpath/tools/common/messages.properties \ + $(srcdir)/resource/gnu/classpath/tools/getopt/messages.properties \ $(srcdir)/resource/gnu/classpath/tools/tnameserv/messages.properties \ $(srcdir)/resource/gnu/classpath/tools/jarsigner/messages.properties \ $(srcdir)/resource/gnu/classpath/tools/rmiregistry/messages.properties \ @@ -1382,7 +1382,9 @@ dist-hook: $(mkinstalldirs) $(distdir)/$$fdir; \ fi; \ echo "cp -p $$file $(distdir)/$$f"; \ - cp -p $$file $(distdir)/$$f; \ + if ! cp -p $$file $(distdir)/$$f; then \ + exit -1 ; \ + fi ; \ done # To generate the example zip just depend on the sources and ignore diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/common/ClasspathToolParser.class b/libjava/classpath/tools/classes/gnu/classpath/tools/common/ClasspathToolParser.class Binary files differindex 67c1578..472e138 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/common/ClasspathToolParser.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/common/ClasspathToolParser.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/common/Messages.class b/libjava/classpath/tools/classes/gnu/classpath/tools/common/Messages.class Binary files differindex 9b3d765..39697a8 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/common/Messages.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/common/Messages.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.class Binary files differindex 1e86b0b..c7429e2 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/getopt/Messages.class b/libjava/classpath/tools/classes/gnu/classpath/tools/getopt/Messages.class Binary files differindex f86b8f7..ce6cc5c 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/getopt/Messages.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/getopt/Messages.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main.class Binary files differindex 2f46dd2..97bda5f 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniHelper.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniHelper.class Binary files differindex 8f09f16..cf4b5cf 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniHelper.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniHelper.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniIncludePrinter.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniIncludePrinter.class Binary files differindex c31f88a..30d1674 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniIncludePrinter.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniIncludePrinter.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$1.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$1.class Binary files differindex ca86d04..05958fd 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$1.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$1.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$10.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$10.class Binary files differindex ea003e4..3e1615a 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$10.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$10.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$2.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$2.class Binary files differindex 560a505..c0998c8 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$2.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$2.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$3.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$3.class Binary files differindex cd7143a..62bf927 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$3.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$3.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$4.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$4.class Binary files differindex 88ea4ee..0305abe 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$4.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$4.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$5.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$5.class Binary files differindex fee2bd1..c8ed400 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$5.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$5.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$6.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$6.class Binary files differindex bb6d72a..d5be6d2 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$6.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$6.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$7.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$7.class Binary files differindex 44390e1..b2e37e1 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$7.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$7.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$8.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$8.class Binary files differindex 28bf6e9..9900e53 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$8.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$8.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$9.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$9.class Binary files differindex 013a655..bc9fb98 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$9.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main$9.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main.class Binary files differindex 57adaab..709b6d0 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$1.class b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$1.class Binary files differindex 8197515..a93676b 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$1.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$1.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$2.class b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$2.class Binary files differindex f87a12e..2e73084 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$2.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$2.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$3.class b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$3.class Binary files differindex f5a9159..c785c7a 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$3.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$3.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$4.class b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$4.class Binary files differindex df3cba9..31d7a46 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$4.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$4.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$5.class b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$5.class Binary files differindex 0c082d0..04b7561 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$5.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main$5.class diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main.class b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main.class Binary files differindex 53468e3..ee1af07 100644 --- a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main.class +++ b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main.class diff --git a/libjava/classpath/tools/gnu/classpath/tools/common/Messages.java b/libjava/classpath/tools/gnu/classpath/tools/common/Messages.java index 1c92d34..4f6d687 100644 --- a/libjava/classpath/tools/gnu/classpath/tools/common/Messages.java +++ b/libjava/classpath/tools/gnu/classpath/tools/common/Messages.java @@ -1,5 +1,5 @@ /* Messages.java -- i18n support for tools common code - Copyright (C) 2006 Free Software Foundation, Inc. + Copyright (C) 2006, 2010 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -44,7 +44,7 @@ import java.util.ResourceBundle; class Messages { private static final String BUNDLE_NAME - = "gnu.classpath.tools.common.Messages"; //$NON-NLS-1$ + = "gnu.classpath.tools.common.messages"; //$NON-NLS-1$ private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME); diff --git a/libjava/classpath/tools/gnu/classpath/tools/getopt/Messages.java b/libjava/classpath/tools/gnu/classpath/tools/getopt/Messages.java index 19f1017..9a9c4ec 100644 --- a/libjava/classpath/tools/gnu/classpath/tools/getopt/Messages.java +++ b/libjava/classpath/tools/gnu/classpath/tools/getopt/Messages.java @@ -1,5 +1,5 @@ /* Messages.java -- i18n support for getopt - Copyright (C) 2006 Free Software Foundation, Inc. + Copyright (C) 2006, 2010 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -44,7 +44,7 @@ import java.util.ResourceBundle; class Messages { private static final String BUNDLE_NAME - = "gnu.classpath.tools.getopt.Messages"; //$NON-NLS-1$ + = "gnu.classpath.tools.getopt.messages"; //$NON-NLS-1$ private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME); diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/JniHelper.java b/libjava/classpath/tools/gnu/classpath/tools/javah/JniHelper.java index 9225444..9a723ca 100644 --- a/libjava/classpath/tools/gnu/classpath/tools/javah/JniHelper.java +++ b/libjava/classpath/tools/gnu/classpath/tools/javah/JniHelper.java @@ -104,6 +104,8 @@ public class JniHelper result.append("_3"); else if (c == '/') result.append("_"); + else if (c == '$') + result.append("_"); else if ((c >= '0' && c <= '9') || (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')) result.append(c); diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/JniIncludePrinter.java b/libjava/classpath/tools/gnu/classpath/tools/javah/JniIncludePrinter.java index cb8bcd8..cf5fed3 100644 --- a/libjava/classpath/tools/gnu/classpath/tools/javah/JniIncludePrinter.java +++ b/libjava/classpath/tools/gnu/classpath/tools/javah/JniIncludePrinter.java @@ -1,5 +1,5 @@ /* JniIncludePrinter.java - Generate a JNI header file - Copyright (C) 2006, 2007 Free Software Foundation, Inc. + Copyright (C) 2006, 2007, 2011 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -63,6 +63,7 @@ public class JniIncludePrinter { klass.linkSupers(); boolean wroteAny = false; + ClassWrapper headerClass = klass; for (; klass != null; klass = klass.superClass) { Iterator<?> i = klass.fields.iterator(); @@ -77,7 +78,7 @@ public class JniIncludePrinter continue; // Note that we don't want to mangle the field name. - String name = (JniHelper.mangle(klass.name) + "_" + field.name); + String name = (JniHelper.mangle(headerClass.name) + "_" + field.name); out.print("#undef "); out.println(name); out.print("#define "); diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/Main.java b/libjava/classpath/tools/gnu/classpath/tools/javah/Main.java index bec04f0..894a5c4 100644 --- a/libjava/classpath/tools/gnu/classpath/tools/javah/Main.java +++ b/libjava/classpath/tools/gnu/classpath/tools/javah/Main.java @@ -58,9 +58,11 @@ import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; +import java.util.Set; import java.util.Map; import org.objectweb.asm.ClassReader; +import org.objectweb.asm.tree.InnerClassNode; public class Main { @@ -101,6 +103,9 @@ public class Main // Map class names to lists of Text objects. HashMap<String,ArrayList<Text>> textMap = new HashMap<String,ArrayList<Text>>(); + // Set of classes which have been parsed + Set<String> parsed = new HashSet<String>(); + void readCommandFile(String textFileName) throws OptionException { FileInputStream fis; @@ -317,7 +322,7 @@ public class Main return result; } - private void writeHeaders(HashMap<File,ClassWrapper> klasses, Printer printer) + private void writeHeaders(Map<File,ClassWrapper> klasses, Printer printer) throws IOException { Iterator<Map.Entry<File,ClassWrapper>> i = klasses.entrySet().iterator(); @@ -332,6 +337,53 @@ public class Main } } + private Map<File,ClassWrapper> parseClasses(Iterator<Object> inputs) + throws IOException + { + Map<File,ClassWrapper> results = new HashMap<File,ClassWrapper>(); + while (inputs.hasNext()) + { + // Let user specify either kind of class name or a + // file name. + Object item = inputs.next(); + ClassWrapper klass; + File filename; + if (item instanceof File) + { + // Load class from file. + if (verbose) + System.err.println("[reading file " + item + "]"); + klass = getClass((File) item); + filename = new File(klass.name); + } + else + { + // Load class given the class name. + String className = ((String) item).replace('.', '/'); + if (verbose) + System.err.println("[reading class " + className + "]"); + // Use the name the user specified, even if it is + // different from the ultimate class name. + filename = new File(className); + klass = getClass(className); + } + results.put(filename, klass); + parsed.add(item.toString()); + + // Check to see if there are inner classes to also parse + Iterator<?> innerClasses = klass.innerClasses.iterator(); + HashSet<Object> innerNames = new HashSet<Object>(); + while (innerClasses.hasNext()) + { + String innerName = ((InnerClassNode) innerClasses.next()).name; + if (!parsed.contains(innerName)) + innerNames.add(innerName); + } + results.putAll(parseClasses(innerNames.iterator())); + } + return results; + } + protected void postParse(String[] names) { // Nothing here. @@ -385,36 +437,7 @@ public class Main } } - Iterator<Object> i = klasses.iterator(); - HashMap<File,ClassWrapper> results = new HashMap<File,ClassWrapper>(); - while (i.hasNext()) - { - // Let user specify either kind of class name or a - // file name. - Object item = i.next(); - ClassWrapper klass; - File filename; - if (item instanceof File) - { - // Load class from file. - if (verbose) - System.err.println("[reading file " + item + "]"); - klass = getClass((File) item); - filename = new File(klass.name); - } - else - { - // Load class given the class name. - String className = ((String) item).replace('.', '/'); - if (verbose) - System.err.println("[reading class " + className + "]"); - // Use the name the user specified, even if it is - // different from the ultimate class name. - filename = new File(className); - klass = getClass(className); - } - results.put(filename, klass); - } + Map<File, ClassWrapper> results = parseClasses(klasses.iterator()); writeHeaders(results, printer); } @@ -457,7 +480,7 @@ public class Main ClassWrapper result = readClass(is); classMap.put(name, result); } - return (ClassWrapper) classMap.get(name); + return classMap.get(name); } public static void main(String[] args) throws IOException diff --git a/libjava/classpath/tools/resource/gnu/classpath/tools/common/Messages.properties b/libjava/classpath/tools/resource/gnu/classpath/tools/common/messages.properties index 17e79c4..afd751e 100644 --- a/libjava/classpath/tools/resource/gnu/classpath/tools/common/Messages.properties +++ b/libjava/classpath/tools/resource/gnu/classpath/tools/common/messages.properties @@ -1,5 +1,5 @@ -# MessagesBundle.properties -- English language messages -# Copyright (C) 2006, 2008 Free Software Foundation, Inc. +# messages.properties -- English language messages +# Copyright (C) 2006, 2008, 2010 Free Software Foundation, Inc. # # This file is part of GNU Classpath. # diff --git a/libjava/classpath/tools/resource/gnu/classpath/tools/getopt/Messages.properties b/libjava/classpath/tools/resource/gnu/classpath/tools/getopt/messages.properties index a747ab4..61bfd0e 100644 --- a/libjava/classpath/tools/resource/gnu/classpath/tools/getopt/Messages.properties +++ b/libjava/classpath/tools/resource/gnu/classpath/tools/getopt/messages.properties @@ -1,5 +1,5 @@ -# MessagesBundle.properties -- English language messages -# Copyright (C) 2006 Free Software Foundation, Inc. +# messages.properties -- English language messages +# Copyright (C) 2006, 2010 Free Software Foundation, Inc. # # This file is part of GNU Classpath. # |