Selaa lähdekoodia

current avr32 gcc patches break x86 and possibly other systems. moving bad patches to separate directory until a proper fix is made. discovered by jacmet and Dr. Nigel Kukard

John Voltz 17 vuotta sitten
vanhempi
commit
577cec7bc6

+ 32 - 1960
toolchain/gcc/4.2.1/900-avr32-atmel.1.3.2.patch → toolchain/gcc/4.2.1/avr32_patches_break_x86/900-avr32-atmel.1.3.2.patch

@@ -20414,7 +20414,9 @@ diff -Nrup gcc-4.2.1/gcc/testsuite/gcc.dg/cpp/mac-eol-at-eof.c gcc-4.2.1.atmel.1
 --- gcc-4.2.1/gcc/testsuite/gcc.dg/cpp/mac-eol-at-eof.c	2005-02-19 20:48:02.000000000 +0100
 +++ gcc-4.2.1.atmel.1.3.2/gcc/testsuite/gcc.dg/cpp/mac-eol-at-eof.c	2007-05-07 14:24:46.000000000 +0200
 @@ -1 +1,3 @@
--/* Test no newline at eof warning when Mac line ending is used*/
/* { dg-do compile } */
int main() { return 0; } 
+-/* Test no newline at eof warning when Mac line ending is used*/
+/* { dg-do compile } */
+int main() { return 0; } 
 \ No newline at end of file
 +/* Test no newline at eof warning when Mac line ending is used*/
 +/* { dg-do compile } */
@@ -20460,37 +20462,37 @@ diff -Nrup gcc-4.2.1/gcc/testsuite/gfortran.dg/char_pointer_assign.f90 gcc-4.2.1
 +++ gcc-4.2.1.atmel.1.3.2/gcc/testsuite/gfortran.dg/char_pointer_assign.f90	2007-05-07 16:38:14.000000000 +0200
 @@ -1,4 +1,4 @@
 -! { dg-do run }
-+! { dg-do run }
- program char_pointer_assign
- ! Test character pointer assignments, required
- ! to fix PR18890 and PR21297
-@@ -8,7 +8,7 @@ program char_pointer_assign
-   character*4, target        :: t2(4) =(/"lmno","lmno","lmno","lmno"/)
-   character*4                :: const
-   character*4, pointer       :: c1, c3
++! { dg-do run }
+ program char_pointer_assign
+ ! Test character pointer assignments, required
+ ! to fix PR18890 and PR21297
+@@ -8,7 +8,7 @@ program char_pointer_assign
+   character*4, target        :: t2(4) =(/"lmno","lmno","lmno","lmno"/)
+   character*4                :: const
+   character*4, pointer       :: c1, c3
 -  character*4, pointer       :: c2(:), c4(:)
-+  character*4, pointer       :: c2(:), c4(:)
-   allocate (c3, c4(4))
- ! Scalars first.
-   c3 = "lmno"          ! pointer = constant
-@@ -24,13 +24,13 @@ program char_pointer_assign
- 
- ! Now arrays.
-   c4 = "lmno"          ! pointer = constant
++  character*4, pointer       :: c2(:), c4(:)
+   allocate (c3, c4(4))
+ ! Scalars first.
+   c3 = "lmno"          ! pointer = constant
+@@ -24,13 +24,13 @@ program char_pointer_assign
+ 
+ ! Now arrays.
+   c4 = "lmno"          ! pointer = constant
 -  t2 = c4              ! target = pointer
 -  c2 => t2             ! pointer =>target
 -  const = c2(1)
-+  t2 = c4              ! target = pointer
-+  c2 => t2             ! pointer =>target
-+  const = c2(1)
-   const(2:3) ="nm"     ! c2(:)(2:3) = "nm" is still broken
-   c2 = const
-   c4 = c2              ! pointer = pointer
++  t2 = c4              ! target = pointer
++  c2 => t2             ! pointer =>target
++  const = c2(1)
+   const(2:3) ="nm"     ! c2(:)(2:3) = "nm" is still broken
+   c2 = const
+   c4 = c2              ! pointer = pointer
 -  const = c4(1)
-+  const = c4(1)
-   const(1:1) ="o"      ! c4(:)(1:1) = "o" is still broken
-   const(4:4) ="l"      ! c4(:)(4:4) = "l" is still broken
-   c4 = const
++  const = c4(1)
+   const(1:1) ="o"      ! c4(:)(1:1) = "o" is still broken
+   const(4:4) ="l"      ! c4(:)(4:4) = "l" is still broken
+   c4 = const
 diff -Nrup gcc-4.2.1/gcc/testsuite/g++.old-deja/g++.pt/static11.C gcc-4.2.1.atmel.1.3.2/gcc/testsuite/g++.old-deja/g++.pt/static11.C
 --- gcc-4.2.1/gcc/testsuite/g++.old-deja/g++.pt/static11.C	2006-02-22 10:05:07.000000000 +0100
 +++ gcc-4.2.1.atmel.1.3.2/gcc/testsuite/g++.old-deja/g++.pt/static11.C	2007-09-28 10:31:46.000000000 +0200
@@ -20503,1937 +20505,7 @@ diff -Nrup gcc-4.2.1/gcc/testsuite/g++.old-deja/g++.pt/static11.C gcc-4.2.1.atme
  
  // Bug: g++ was failing to destroy C<int>::a because it was using two
  // different sentry variables for construction and destruction.
-diff -Nrup gcc-4.2.1/LAST_UPDATED gcc-4.2.1.atmel.1.3.2/LAST_UPDATED
---- gcc-4.2.1/LAST_UPDATED	2007-07-19 16:33:57.000000000 +0200
-+++ gcc-4.2.1.atmel.1.3.2/LAST_UPDATED	1970-01-01 01:00:00.000000000 +0100
-@@ -1 +0,0 @@
--Obtained from SVN: tags/gcc_4_2_1_release revision 126787
-diff -Nrup gcc-4.2.1/libjava/classpath/external/relaxngDatatype/copying.txt gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/copying.txt
---- gcc-4.2.1/libjava/classpath/external/relaxngDatatype/copying.txt	2006-03-10 14:25:35.000000000 +0100
-+++ gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/copying.txt	2007-09-28 10:34:16.000000000 +0200
-@@ -1,30 +1,30 @@
--Copyright (c) 2001, Thai Open Source Software Center Ltd, Sun Microsystems.
--All rights reserved.
--
--Redistribution and use in source and binary forms, with or without
--modification, are permitted provided that the following conditions are
--met:
--
--    Redistributions of source code must retain the above copyright
--    notice, this list of conditions and the following disclaimer.
--
--    Redistributions in binary form must reproduce the above copyright
--    notice, this list of conditions and the following disclaimer in
--    the documentation and/or other materials provided with the
--    distribution.
--
--    Neither the names of the copyright holders nor the names of its
--    contributors may be used to endorse or promote products derived
--    from this software without specific prior written permission.
--
--THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
--"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
--LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
--A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
--CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
--EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
--PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
--PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
--LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
--NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
--SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+Copyright (c) 2001, Thai Open Source Software Center Ltd, Sun Microsystems.
-+All rights reserved.
-+
-+Redistribution and use in source and binary forms, with or without
-+modification, are permitted provided that the following conditions are
-+met:
-+
-+    Redistributions of source code must retain the above copyright
-+    notice, this list of conditions and the following disclaimer.
-+
-+    Redistributions in binary form must reproduce the above copyright
-+    notice, this list of conditions and the following disclaimer in
-+    the documentation and/or other materials provided with the
-+    distribution.
-+
-+    Neither the names of the copyright holders nor the names of its
-+    contributors may be used to endorse or promote products derived
-+    from this software without specific prior written permission.
-+
-+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
-+CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-+EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-+PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-diff -Nrup gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeBuilder.java gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeBuilder.java
---- gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeBuilder.java	2006-03-10 14:25:35.000000000 +0100
-+++ gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeBuilder.java	2007-09-28 10:34:16.000000000 +0200
-@@ -1,45 +1,45 @@
--package org.relaxng.datatype;
--
--/**
-- * Creates a user-defined type by adding parameters to
-- * the pre-defined type.
-- * 
-- * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-- * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-- */
--public interface DatatypeBuilder {
--	
--	/**
--	 * Adds a new parameter.
--	 *
--	 * @param name
--	 *		The name of the parameter to be added.
--	 * @param strValue
--	 *		The raw value of the parameter. Caller may not normalize
--	 *		this value because any white space is potentially significant.
--	 * @param context
--	 *		The context information which can be used by the callee to
--	 *		acquire additional information. This context object is
--	 *		valid only during this method call. The callee may not
--	 *		keep a reference to this object.
--	 * @exception	DatatypeException
--	 *		When the given parameter is inappropriate for some reason.
--	 *		The callee is responsible to recover from this error.
--	 *		That is, the object should behave as if no such error
--	 *		was occured.
--	 */
--	void addParameter( String name, String strValue, ValidationContext context )
--		throws DatatypeException;
--	
--	/**
--	 * Derives a new Datatype from a Datatype by parameters that
--	 * were already set through the addParameter method.
--	 * 
--	 * @exception DatatypeException
--	 *		DatatypeException must be thrown if the derivation is
--	 *		somehow invalid. For example, a required parameter is missing,
--	 *		etc. The exception should contain a diagnosis message
--	 *		if possible.
--	 */
--	Datatype createDatatype() throws DatatypeException;
--}
-+package org.relaxng.datatype;
-+
-+/**
-+ * Creates a user-defined type by adding parameters to
-+ * the pre-defined type.
-+ * 
-+ * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-+ * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-+ */
-+public interface DatatypeBuilder {
-+	
-+	/**
-+	 * Adds a new parameter.
-+	 *
-+	 * @param name
-+	 *		The name of the parameter to be added.
-+	 * @param strValue
-+	 *		The raw value of the parameter. Caller may not normalize
-+	 *		this value because any white space is potentially significant.
-+	 * @param context
-+	 *		The context information which can be used by the callee to
-+	 *		acquire additional information. This context object is
-+	 *		valid only during this method call. The callee may not
-+	 *		keep a reference to this object.
-+	 * @exception	DatatypeException
-+	 *		When the given parameter is inappropriate for some reason.
-+	 *		The callee is responsible to recover from this error.
-+	 *		That is, the object should behave as if no such error
-+	 *		was occured.
-+	 */
-+	void addParameter( String name, String strValue, ValidationContext context )
-+		throws DatatypeException;
-+	
-+	/**
-+	 * Derives a new Datatype from a Datatype by parameters that
-+	 * were already set through the addParameter method.
-+	 * 
-+	 * @exception DatatypeException
-+	 *		DatatypeException must be thrown if the derivation is
-+	 *		somehow invalid. For example, a required parameter is missing,
-+	 *		etc. The exception should contain a diagnosis message
-+	 *		if possible.
-+	 */
-+	Datatype createDatatype() throws DatatypeException;
-+}
-diff -Nrup gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeException.java gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeException.java
---- gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeException.java	2006-03-10 14:25:35.000000000 +0100
-+++ gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeException.java	2007-09-28 10:34:16.000000000 +0200
-@@ -1,39 +1,39 @@
--package org.relaxng.datatype;
--
--/**
-- * Signals Datatype related exceptions.
-- * 
-- * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-- * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-- */
--public class DatatypeException extends Exception {
--	
--	public DatatypeException( int index, String msg ) {
--		super(msg);
--		this.index = index;
--	}
--	public DatatypeException( String msg ) {
--		this(UNKNOWN,msg);
--	}
--	/**
--	 * A constructor for those datatype libraries which don't support any
--	 * diagnostic information at all.
--	 */
--	public DatatypeException() {
--		this(UNKNOWN,null);
--	}
--	
--	
--	private final int index;
--	
--	public static final int UNKNOWN = -1;
--
--	/**
--	 * Gets the index of the content where the error occured.
--	 * UNKNOWN can be returned to indicate that no index information
--	 * is available.
--	 */
--	public int getIndex() {
--		return index;
--	}
--}
-+package org.relaxng.datatype;
-+
-+/**
-+ * Signals Datatype related exceptions.
-+ * 
-+ * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-+ * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-+ */
-+public class DatatypeException extends Exception {
-+	
-+	public DatatypeException( int index, String msg ) {
-+		super(msg);
-+		this.index = index;
-+	}
-+	public DatatypeException( String msg ) {
-+		this(UNKNOWN,msg);
-+	}
-+	/**
-+	 * A constructor for those datatype libraries which don't support any
-+	 * diagnostic information at all.
-+	 */
-+	public DatatypeException() {
-+		this(UNKNOWN,null);
-+	}
-+	
-+	
-+	private final int index;
-+	
-+	public static final int UNKNOWN = -1;
-+
-+	/**
-+	 * Gets the index of the content where the error occured.
-+	 * UNKNOWN can be returned to indicate that no index information
-+	 * is available.
-+	 */
-+	public int getIndex() {
-+		return index;
-+	}
-+}
-diff -Nrup gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/Datatype.java gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/Datatype.java
---- gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/Datatype.java	2006-03-10 14:25:35.000000000 +0100
-+++ gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/Datatype.java	2007-09-28 10:34:16.000000000 +0200
-@@ -1,237 +1,237 @@
--package org.relaxng.datatype;
--
--/**
-- * Datatype object.
-- * 
-- * This object has the following functionality:
-- * 
-- * <ol>
-- *  <li> functionality to identify a class of character sequences. This is
-- *       done through the isValid method.
-- * 
-- *  <li> functionality to produce a "value object" from a character sequence and
-- *		 context information.
-- * 
-- *  <li> functionality to test the equality of two value objects.
-- * </ol>
-- * 
-- * This interface also defines the createStreamingValidator method,
-- * which is intended to efficiently support the validation of
-- * large character sequences.
-- * 
-- * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-- * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-- */
--public interface Datatype {
--	
--	/**
--	 * Checks if the specified 'literal' matches this Datatype
--	 * with respect to the current context.
--	 * 
--	 * @param literal
--	 *		the lexical representation to be checked.
--	 * @param context
--	 *		If this datatype is context-dependent
--	 *		(i.e. the {@link #isContextDependent} method returns true),
--	 *		then the caller must provide a non-null valid context object.
--	 *		Otherwise, the caller can pass null.
--	 * 
--	 * @return
--	 *		true if the 'literal' is a member of this Datatype;
--	 *		false if it's not a member of this Datatype.
--	 */
--	boolean isValid( String literal, ValidationContext context );
--	
--	/**
--	 * Similar to the isValid method but throws an exception with diagnosis
--	 * in case of errors.
--	 * 
--	 * <p>
--	 * If the specified 'literal' is a valid lexical representation for this
--	 * datatype, then this method must return without throwing any exception.
--	 * If not, the callee must throw an exception (with diagnosis message,
--	 * if possible.)
--	 * 
--	 * <p>
--	 * The application can use this method to provide detailed error message
--	 * to users. This method is kept separate from the isValid method to
--	 * achieve higher performance during normal validation.
--	 * 
--	 * @exception DatatypeException
--	 *		If the given literal is invalid, then this exception is thrown.
--	 *		If the callee supports error diagnosis, then the exception should
--	 *		contain a diagnosis message.
--	 */
--	void checkValid( String literal, ValidationContext context )
--		throws DatatypeException;
--	
--	/**
--	 * Creates an instance of a streaming validator for this type.
--	 * 
--	 * <p>
--	 * By using streaming validators instead of the isValid method,
--	 * the caller can avoid keeping the entire string, which is
--	 * sometimes quite big, in memory.
--	 * 
--	 * @param context
--	 *		If this datatype is context-dependent
--	 *		(i.e. the {@link #isContextDependent} method returns true),
--	 *		then the caller must provide a non-null valid context object.
--	 *		Otherwise, the caller can pass null.
--	 *		The callee may keep a reference to this context object
--	 *		only while the returned streaming validator is being used.
--	 */
--	DatatypeStreamingValidator createStreamingValidator( ValidationContext context );
--	
--	/**
--	 * Converts lexcial value and the current context to the corresponding
--	 * value object.
--	 * 
--	 * <p>
--	 * The caller cannot generally assume that the value object is
--	 * a meaningful Java object. For example, the caller cannot expect
--	 * this method to return <code>java.lang.Number</code> type for
--	 * the "integer" type of XML Schema Part 2.
--	 * 
--	 * <p>
--	 * Also, the caller cannot assume that the equals method and
--	 * the hashCode method of the value object are consistent with
--	 * the semantics of the datatype. For that purpose, the sameValue
--	 * method and the valueHashCode method have to be used. Note that
--	 * this means you cannot use classes like
--	 * <code>java.util.Hashtable</code> to store the value objects.
--	 * 
--	 * <p>
--	 * The returned value object should be used solely for the sameValue
--	 * and valueHashCode methods.
--	 * 
--	 * @param context
--	 *		If this datatype is context-dependent
--	 *		(when the {@link #isContextDependent} method returns true),
--	 *		then the caller must provide a non-null valid context object.
--	 *		Otherwise, the caller can pass null.
--	 * 
--	 * @return	null
--	 *		when the given lexical value is not a valid lexical
--	 *		value for this type.
--	 */
--	Object createValue( String literal, ValidationContext context );
--	
--	/**
--	 * Tests the equality of two value objects which were originally
--	 * created by the createValue method of this object.
--	 * 
--	 * The behavior is undefined if objects not created by this type
--	 * are passed. It is the caller's responsibility to ensure that
--	 * value objects belong to this type.
--	 * 
--	 * @return
--	 *		true if two value objects are considered equal according to
--	 *		the definition of this datatype; false if otherwise.
--	 */
--	boolean sameValue( Object value1, Object value2 );
--	
--	
--	/**
--	 * Computes the hash code for a value object,
--	 * which is consistent with the sameValue method.
--	 * 
--	 * @return
--	 *		hash code for the specified value object.
--	 */
--	int valueHashCode( Object value );
--
--
--
--	
--	/**
--	 * Indicates that the datatype doesn't have ID/IDREF semantics.
--	 * 
--	 * This value is one of the possible return values of the
--	 * {@link #getIdType} method.
--	 */
--	public static final int ID_TYPE_NULL = 0;
--	
--	/**
--	 * Indicates that RELAX NG compatibility processors should
--	 * treat this datatype as having ID semantics.
--	 * 
--	 * This value is one of the possible return values of the
--	 * {@link #getIdType} method.
--	 */
--	public static final int ID_TYPE_ID = 1;
--	
--	/**
--	 * Indicates that RELAX NG compatibility processors should
--	 * treat this datatype as having IDREF semantics.
--	 * 
--	 * This value is one of the possible return values of the
--	 * {@link #getIdType} method.
--	 */
--	public static final int ID_TYPE_IDREF = 2;
--	
--	/**
--	 * Indicates that RELAX NG compatibility processors should
--	 * treat this datatype as having IDREFS semantics.
--	 * 
--	 * This value is one of the possible return values of the
--	 * {@link #getIdType} method.
--	 */
--	public static final int ID_TYPE_IDREFS = 3;
--	
--	/**
--	 * Checks if the ID/IDREF semantics is associated with this
--	 * datatype.
--	 * 
--	 * <p>
--	 * This method is introduced to support the RELAX NG DTD
--	 * compatibility spec. (Of course it's always free to use
--	 * this method for other purposes.)
--	 * 
--	 * <p>
--	 * If you are implementing a datatype library and have no idea about
--	 * the "RELAX NG DTD compatibility" thing, just return
--	 * <code>ID_TYPE_NULL</code> is fine.
--	 * 
--	 * @return
--	 *		If this datatype doesn't have any ID/IDREF semantics,
--	 *		it returns {@link #ID_TYPE_NULL}. If it has such a semantics
--	 *		(for example, XSD:ID, XSD:IDREF and comp:ID type), then
--	 *		it returns {@link #ID_TYPE_ID}, {@link #ID_TYPE_IDREF} or
--	 *		{@link #ID_TYPE_IDREFS}.
--	 */
--	public int getIdType();
--	
--	
--	/**
--	 * Checks if this datatype may need a context object for
--	 * the validation.
--	 * 
--	 * <p>
--	 * The callee must return true even when the context
--	 * is not always necessary. (For example, the "QName" type
--	 * doesn't need a context object when validating unprefixed
--	 * string. But nonetheless QName must return true.)
--	 * 
--	 * <p>
--	 * XSD's <code>string</code> and <code>short</code> types
--	 * are examples of context-independent datatypes.
--	 * Its <code>QName</code> and <code>ENTITY</code> types
--	 * are examples of context-dependent datatypes.
--	 * 
--	 * <p>
--	 * When a datatype is context-independent, then
--	 * the {@link #isValid} method, the {@link #checkValid} method,
--	 * the {@link #createStreamingValidator} method and
--	 * the {@link #createValue} method can be called without
--	 * providing a context object.
--	 * 
--	 * @return
--	 *		<b>true</b> if this datatype is context-dependent
--	 *		(it needs a context object sometimes);
--	 * 
--	 *		<b>false</b> if this datatype is context-<b>in</b>dependent
--	 *		(it never needs a context object).
--	 */
--	public boolean isContextDependent();
--}
-+package org.relaxng.datatype;
-+
-+/**
-+ * Datatype object.
-+ * 
-+ * This object has the following functionality:
-+ * 
-+ * <ol>
-+ *  <li> functionality to identify a class of character sequences. This is
-+ *       done through the isValid method.
-+ * 
-+ *  <li> functionality to produce a "value object" from a character sequence and
-+ *		 context information.
-+ * 
-+ *  <li> functionality to test the equality of two value objects.
-+ * </ol>
-+ * 
-+ * This interface also defines the createStreamingValidator method,
-+ * which is intended to efficiently support the validation of
-+ * large character sequences.
-+ * 
-+ * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-+ * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-+ */
-+public interface Datatype {
-+	
-+	/**
-+	 * Checks if the specified 'literal' matches this Datatype
-+	 * with respect to the current context.
-+	 * 
-+	 * @param literal
-+	 *		the lexical representation to be checked.
-+	 * @param context
-+	 *		If this datatype is context-dependent
-+	 *		(i.e. the {@link #isContextDependent} method returns true),
-+	 *		then the caller must provide a non-null valid context object.
-+	 *		Otherwise, the caller can pass null.
-+	 * 
-+	 * @return
-+	 *		true if the 'literal' is a member of this Datatype;
-+	 *		false if it's not a member of this Datatype.
-+	 */
-+	boolean isValid( String literal, ValidationContext context );
-+	
-+	/**
-+	 * Similar to the isValid method but throws an exception with diagnosis
-+	 * in case of errors.
-+	 * 
-+	 * <p>
-+	 * If the specified 'literal' is a valid lexical representation for this
-+	 * datatype, then this method must return without throwing any exception.
-+	 * If not, the callee must throw an exception (with diagnosis message,
-+	 * if possible.)
-+	 * 
-+	 * <p>
-+	 * The application can use this method to provide detailed error message
-+	 * to users. This method is kept separate from the isValid method to
-+	 * achieve higher performance during normal validation.
-+	 * 
-+	 * @exception DatatypeException
-+	 *		If the given literal is invalid, then this exception is thrown.
-+	 *		If the callee supports error diagnosis, then the exception should
-+	 *		contain a diagnosis message.
-+	 */
-+	void checkValid( String literal, ValidationContext context )
-+		throws DatatypeException;
-+	
-+	/**
-+	 * Creates an instance of a streaming validator for this type.
-+	 * 
-+	 * <p>
-+	 * By using streaming validators instead of the isValid method,
-+	 * the caller can avoid keeping the entire string, which is
-+	 * sometimes quite big, in memory.
-+	 * 
-+	 * @param context
-+	 *		If this datatype is context-dependent
-+	 *		(i.e. the {@link #isContextDependent} method returns true),
-+	 *		then the caller must provide a non-null valid context object.
-+	 *		Otherwise, the caller can pass null.
-+	 *		The callee may keep a reference to this context object
-+	 *		only while the returned streaming validator is being used.
-+	 */
-+	DatatypeStreamingValidator createStreamingValidator( ValidationContext context );
-+	
-+	/**
-+	 * Converts lexcial value and the current context to the corresponding
-+	 * value object.
-+	 * 
-+	 * <p>
-+	 * The caller cannot generally assume that the value object is
-+	 * a meaningful Java object. For example, the caller cannot expect
-+	 * this method to return <code>java.lang.Number</code> type for
-+	 * the "integer" type of XML Schema Part 2.
-+	 * 
-+	 * <p>
-+	 * Also, the caller cannot assume that the equals method and
-+	 * the hashCode method of the value object are consistent with
-+	 * the semantics of the datatype. For that purpose, the sameValue
-+	 * method and the valueHashCode method have to be used. Note that
-+	 * this means you cannot use classes like
-+	 * <code>java.util.Hashtable</code> to store the value objects.
-+	 * 
-+	 * <p>
-+	 * The returned value object should be used solely for the sameValue
-+	 * and valueHashCode methods.
-+	 * 
-+	 * @param context
-+	 *		If this datatype is context-dependent
-+	 *		(when the {@link #isContextDependent} method returns true),
-+	 *		then the caller must provide a non-null valid context object.
-+	 *		Otherwise, the caller can pass null.
-+	 * 
-+	 * @return	null
-+	 *		when the given lexical value is not a valid lexical
-+	 *		value for this type.
-+	 */
-+	Object createValue( String literal, ValidationContext context );
-+	
-+	/**
-+	 * Tests the equality of two value objects which were originally
-+	 * created by the createValue method of this object.
-+	 * 
-+	 * The behavior is undefined if objects not created by this type
-+	 * are passed. It is the caller's responsibility to ensure that
-+	 * value objects belong to this type.
-+	 * 
-+	 * @return
-+	 *		true if two value objects are considered equal according to
-+	 *		the definition of this datatype; false if otherwise.
-+	 */
-+	boolean sameValue( Object value1, Object value2 );
-+	
-+	
-+	/**
-+	 * Computes the hash code for a value object,
-+	 * which is consistent with the sameValue method.
-+	 * 
-+	 * @return
-+	 *		hash code for the specified value object.
-+	 */
-+	int valueHashCode( Object value );
-+
-+
-+
-+	
-+	/**
-+	 * Indicates that the datatype doesn't have ID/IDREF semantics.
-+	 * 
-+	 * This value is one of the possible return values of the
-+	 * {@link #getIdType} method.
-+	 */
-+	public static final int ID_TYPE_NULL = 0;
-+	
-+	/**
-+	 * Indicates that RELAX NG compatibility processors should
-+	 * treat this datatype as having ID semantics.
-+	 * 
-+	 * This value is one of the possible return values of the
-+	 * {@link #getIdType} method.
-+	 */
-+	public static final int ID_TYPE_ID = 1;
-+	
-+	/**
-+	 * Indicates that RELAX NG compatibility processors should
-+	 * treat this datatype as having IDREF semantics.
-+	 * 
-+	 * This value is one of the possible return values of the
-+	 * {@link #getIdType} method.
-+	 */
-+	public static final int ID_TYPE_IDREF = 2;
-+	
-+	/**
-+	 * Indicates that RELAX NG compatibility processors should
-+	 * treat this datatype as having IDREFS semantics.
-+	 * 
-+	 * This value is one of the possible return values of the
-+	 * {@link #getIdType} method.
-+	 */
-+	public static final int ID_TYPE_IDREFS = 3;
-+	
-+	/**
-+	 * Checks if the ID/IDREF semantics is associated with this
-+	 * datatype.
-+	 * 
-+	 * <p>
-+	 * This method is introduced to support the RELAX NG DTD
-+	 * compatibility spec. (Of course it's always free to use
-+	 * this method for other purposes.)
-+	 * 
-+	 * <p>
-+	 * If you are implementing a datatype library and have no idea about
-+	 * the "RELAX NG DTD compatibility" thing, just return
-+	 * <code>ID_TYPE_NULL</code> is fine.
-+	 * 
-+	 * @return
-+	 *		If this datatype doesn't have any ID/IDREF semantics,
-+	 *		it returns {@link #ID_TYPE_NULL}. If it has such a semantics
-+	 *		(for example, XSD:ID, XSD:IDREF and comp:ID type), then
-+	 *		it returns {@link #ID_TYPE_ID}, {@link #ID_TYPE_IDREF} or
-+	 *		{@link #ID_TYPE_IDREFS}.
-+	 */
-+	public int getIdType();
-+	
-+	
-+	/**
-+	 * Checks if this datatype may need a context object for
-+	 * the validation.
-+	 * 
-+	 * <p>
-+	 * The callee must return true even when the context
-+	 * is not always necessary. (For example, the "QName" type
-+	 * doesn't need a context object when validating unprefixed
-+	 * string. But nonetheless QName must return true.)
-+	 * 
-+	 * <p>
-+	 * XSD's <code>string</code> and <code>short</code> types
-+	 * are examples of context-independent datatypes.
-+	 * Its <code>QName</code> and <code>ENTITY</code> types
-+	 * are examples of context-dependent datatypes.
-+	 * 
-+	 * <p>
-+	 * When a datatype is context-independent, then
-+	 * the {@link #isValid} method, the {@link #checkValid} method,
-+	 * the {@link #createStreamingValidator} method and
-+	 * the {@link #createValue} method can be called without
-+	 * providing a context object.
-+	 * 
-+	 * @return
-+	 *		<b>true</b> if this datatype is context-dependent
-+	 *		(it needs a context object sometimes);
-+	 * 
-+	 *		<b>false</b> if this datatype is context-<b>in</b>dependent
-+	 *		(it never needs a context object).
-+	 */
-+	public boolean isContextDependent();
-+}
-diff -Nrup gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeLibraryFactory.java gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeLibraryFactory.java
---- gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeLibraryFactory.java	2006-03-10 14:25:35.000000000 +0100
-+++ gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeLibraryFactory.java	2007-09-28 10:34:16.000000000 +0200
-@@ -1,26 +1,26 @@
--package org.relaxng.datatype;
--
--/**
-- * Factory class for the DatatypeLibrary class.
-- * 
-- * <p>
-- * The datatype library should provide the implementation of
-- * this interface if it wants to be found by the schema processors.
-- * The implementor also have to place a file in your jar file.
-- * See the reference datatype library implementation for detail.
-- * 
-- * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-- * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-- */
--public interface DatatypeLibraryFactory
--{
--	/**
--	 * Creates a new instance of a DatatypeLibrary that supports 
--	 * the specified namespace URI.
--	 * 
--	 * @return
--	 *		<code>null</code> if the specified namespace URI is not
--	 *		supported.	
--	 */
--	DatatypeLibrary createDatatypeLibrary( String namespaceURI );
--}
-+package org.relaxng.datatype;
-+
-+/**
-+ * Factory class for the DatatypeLibrary class.
-+ * 
-+ * <p>
-+ * The datatype library should provide the implementation of
-+ * this interface if it wants to be found by the schema processors.
-+ * The implementor also have to place a file in your jar file.
-+ * See the reference datatype library implementation for detail.
-+ * 
-+ * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-+ * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-+ */
-+public interface DatatypeLibraryFactory
-+{
-+	/**
-+	 * Creates a new instance of a DatatypeLibrary that supports 
-+	 * the specified namespace URI.
-+	 * 
-+	 * @return
-+	 *		<code>null</code> if the specified namespace URI is not
-+	 *		supported.	
-+	 */
-+	DatatypeLibrary createDatatypeLibrary( String namespaceURI );
-+}
-diff -Nrup gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeLibrary.java gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeLibrary.java
---- gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeLibrary.java	2006-03-10 14:25:35.000000000 +0100
-+++ gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeLibrary.java	2007-09-28 10:34:16.000000000 +0200
-@@ -1,37 +1,37 @@
--package org.relaxng.datatype;
--
--/**
-- * A Datatype library
-- * 
-- * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-- * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-- */
--public interface DatatypeLibrary {
--	
--	/**
--	 * Creates a new instance of DatatypeBuilder.
--	 * 
--	 * The callee should throw a DatatypeException in case of an error.
--	 * 
--	 * @param baseTypeLocalName
--	 *		The local name of the base type.
--	 * 
--	 * @return
--	 *		A non-null valid datatype object.
--	 */
--	DatatypeBuilder createDatatypeBuilder( String baseTypeLocalName )
--		throws DatatypeException;
--	
--	/**
--	 * Gets or creates a pre-defined type.
--	 * 
--	 * This is just a short-cut of
--	 * <code>createDatatypeBuilder(typeLocalName).createDatatype();</code>
--	 * 
--	 * The callee should throw a DatatypeException in case of an error.
--	 * 
--	 * @return
--	 *		A non-null valid datatype object.
--	 */
--	Datatype createDatatype( String typeLocalName ) throws DatatypeException;
--}
-+package org.relaxng.datatype;
-+
-+/**
-+ * A Datatype library
-+ * 
-+ * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-+ * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-+ */
-+public interface DatatypeLibrary {
-+	
-+	/**
-+	 * Creates a new instance of DatatypeBuilder.
-+	 * 
-+	 * The callee should throw a DatatypeException in case of an error.
-+	 * 
-+	 * @param baseTypeLocalName
-+	 *		The local name of the base type.
-+	 * 
-+	 * @return
-+	 *		A non-null valid datatype object.
-+	 */
-+	DatatypeBuilder createDatatypeBuilder( String baseTypeLocalName )
-+		throws DatatypeException;
-+	
-+	/**
-+	 * Gets or creates a pre-defined type.
-+	 * 
-+	 * This is just a short-cut of
-+	 * <code>createDatatypeBuilder(typeLocalName).createDatatype();</code>
-+	 * 
-+	 * The callee should throw a DatatypeException in case of an error.
-+	 * 
-+	 * @return
-+	 *		A non-null valid datatype object.
-+	 */
-+	Datatype createDatatype( String typeLocalName ) throws DatatypeException;
-+}
-diff -Nrup gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeStreamingValidator.java gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeStreamingValidator.java
---- gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeStreamingValidator.java	2006-03-10 14:25:35.000000000 +0100
-+++ gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/DatatypeStreamingValidator.java	2007-09-28 10:34:16.000000000 +0200
-@@ -1,46 +1,46 @@
--package org.relaxng.datatype;
--
--/**
-- * Datatype streaming validator.
-- * 
-- * <p>
-- * The streaming validator is an optional feature that is useful for
-- * certain Datatypes. It allows the caller to incrementally provide
-- * the literal.
-- * 
-- * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-- * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-- */
--public interface DatatypeStreamingValidator {
--	
--	/**
--	 * Passes an additional fragment of the literal.
--	 * 
--	 * <p>
--	 * The application can call this method several times, then call
--	 * the isValid method (or the checkValid method) to check the validity
--	 * of the accumulated characters.
--	 */
--	void addCharacters( char[] buf, int start, int len );
--	
--	/**
--	 * Tells if the accumulated literal is valid with respect to
--	 * the underlying Datatype.
--	 * 
--	 * @return
--	 *		True if it is valid. False if otherwise.
--	 */
--	boolean isValid();
--	
--	/**
--	 * Similar to the isValid method, but this method throws
--	 * Exception (with possibly diagnostic information), instead of
--	 * returning false.
--	 * 
--	 * @exception DatatypeException
--	 *		If the callee supports the diagnosis and the accumulated
--	 *		literal is invalid, then this exception that possibly
--	 *		contains diagnosis information is thrown.
--	 */
--	void checkValid() throws DatatypeException;
--}
-+package org.relaxng.datatype;
-+
-+/**
-+ * Datatype streaming validator.
-+ * 
-+ * <p>
-+ * The streaming validator is an optional feature that is useful for
-+ * certain Datatypes. It allows the caller to incrementally provide
-+ * the literal.
-+ * 
-+ * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-+ * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-+ */
-+public interface DatatypeStreamingValidator {
-+	
-+	/**
-+	 * Passes an additional fragment of the literal.
-+	 * 
-+	 * <p>
-+	 * The application can call this method several times, then call
-+	 * the isValid method (or the checkValid method) to check the validity
-+	 * of the accumulated characters.
-+	 */
-+	void addCharacters( char[] buf, int start, int len );
-+	
-+	/**
-+	 * Tells if the accumulated literal is valid with respect to
-+	 * the underlying Datatype.
-+	 * 
-+	 * @return
-+	 *		True if it is valid. False if otherwise.
-+	 */
-+	boolean isValid();
-+	
-+	/**
-+	 * Similar to the isValid method, but this method throws
-+	 * Exception (with possibly diagnostic information), instead of
-+	 * returning false.
-+	 * 
-+	 * @exception DatatypeException
-+	 *		If the callee supports the diagnosis and the accumulated
-+	 *		literal is invalid, then this exception that possibly
-+	 *		contains diagnosis information is thrown.
-+	 */
-+	void checkValid() throws DatatypeException;
-+}
-diff -Nrup gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/helpers/DatatypeLibraryLoader.java gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/helpers/DatatypeLibraryLoader.java
---- gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/helpers/DatatypeLibraryLoader.java	2006-03-10 14:25:35.000000000 +0100
-+++ gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/helpers/DatatypeLibraryLoader.java	2007-09-28 10:34:16.000000000 +0200
-@@ -1,262 +1,262 @@
--/**
-- * Copyright (c) 2001, Thai Open Source Software Center Ltd
-- * All rights reserved.
-- * 
-- * Redistribution and use in source and binary forms, with or without
-- * modification, are permitted provided that the following conditions are
-- * met:
-- * 
-- *     Redistributions of source code must retain the above copyright
-- *     notice, this list of conditions and the following disclaimer.
-- * 
-- *     Redistributions in binary form must reproduce the above copyright
-- *     notice, this list of conditions and the following disclaimer in
-- *     the documentation and/or other materials provided with the
-- *     distribution.
-- * 
-- *     Neither the name of the Thai Open Source Software Center Ltd nor
-- *     the names of its contributors may be used to endorse or promote
-- *     products derived from this software without specific prior written
-- *     permission.
-- * 
-- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
-- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-- * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-- */
--package org.relaxng.datatype.helpers;
--
--import org.relaxng.datatype.DatatypeLibraryFactory;
--import org.relaxng.datatype.DatatypeLibrary;
--import java.util.Enumeration;
--import java.util.NoSuchElementException;
--import java.util.Vector;
--import java.io.Reader;
--import java.io.InputStream;
--import java.io.InputStreamReader;
--import java.io.BufferedReader;
--import java.io.IOException;
--import java.io.UnsupportedEncodingException;
--import java.net.URL;
--
--/**
-- * Discovers the datatype library implementation from the classpath.
-- * 
-- * <p>
-- * The call of the createDatatypeLibrary method finds an implementation
-- * from a given datatype library URI at run-time.
-- */
--public class DatatypeLibraryLoader implements DatatypeLibraryFactory {
--  private final Service service = new Service(DatatypeLibraryFactory.class);
--
--  public DatatypeLibrary createDatatypeLibrary(String uri) {
--    for (Enumeration e = service.getProviders();
--	 e.hasMoreElements();) {
--      DatatypeLibraryFactory factory
--	= (DatatypeLibraryFactory)e.nextElement();
--      DatatypeLibrary library = factory.createDatatypeLibrary(uri);
--      if (library != null)
--	return library;
--    }
--    return null;
--  }
--
--	private static class Service {
--	  private final Class serviceClass;
--	  private final Enumeration configFiles;
--	  private Enumeration classNames = null;
--	  private final Vector providers = new Vector();
--	  private Loader loader;
--
--	  private class ProviderEnumeration implements Enumeration {
--	    private int nextIndex = 0;
--
--	    public boolean hasMoreElements() {
--	      return nextIndex < providers.size() || moreProviders();
--	    }
--
--	    public Object nextElement() {
--	      try {
--		return providers.elementAt(nextIndex++);
--	      }
--	      catch (ArrayIndexOutOfBoundsException e) {
--		throw new NoSuchElementException();
--	      }
--	    }
--	  }
--
--	  private static class Singleton implements Enumeration {
--	    private Object obj;
--	    private Singleton(Object obj) {
--	      this.obj = obj;
--	    }
--
--	    public boolean hasMoreElements() {
--	      return obj != null;
--	    }
--
--	    public Object nextElement() {
--	      if (obj == null)
--		throw new NoSuchElementException();
--	      Object tem = obj;
--	      obj = null;
--	      return tem;
--	    }
--	  }
--
--	  // JDK 1.1
--	  private static class Loader {
--	    Enumeration getResources(String resName) {
--	      ClassLoader cl = Loader.class.getClassLoader();
--	      URL url;
--	      if (cl == null)
--		url = ClassLoader.getSystemResource(resName);
--	      else
--		url = cl.getResource(resName);
--	      return new Singleton(url);
--	    }
--
--	    Class loadClass(String name) throws ClassNotFoundException {
--	      return Class.forName(name);
--	    }
--	  }
--
--	  // JDK 1.2+
--	  private static class Loader2 extends Loader {
--	    private ClassLoader cl;
--
--	    Loader2() {
--	      cl = Loader2.class.getClassLoader();
--	      // If the thread context class loader has the class loader
--	      // of this class as an ancestor, use the thread context class
--	      // loader.  Otherwise, the thread context class loader
--	      // probably hasn't been set up properly, so don't use it.
--	      ClassLoader clt = Thread.currentThread().getContextClassLoader();
--	      for (ClassLoader tem = clt; tem != null; tem = tem.getParent())
--		if (tem == cl) {
--		  cl = clt;
--		  break;
--		}
--	    }
--
--	    Enumeration getResources(String resName) {
--	      try {
--		return cl.getResources(resName);
--	      }
--	      catch (IOException e) {
--		return new Singleton(null);
--	      }
--	    }
--
--	    Class loadClass(String name) throws ClassNotFoundException {
--	      return Class.forName(name, true, cl);
--	    }
--	  }
--
--	  public Service(Class cls) {
--	    try {
--	      loader = new Loader2();
--	    }
--	    catch (NoSuchMethodError e) {
--	      loader = new Loader();
--	    }
--	    serviceClass = cls;
--	    String resName = "META-INF/services/" + serviceClass.getName();
--	    configFiles = loader.getResources(resName);
--	  }
--
--	  public Enumeration getProviders() {
--	    return new ProviderEnumeration();
--	  }
--
--	  synchronized private boolean moreProviders() {
--	    for (;;) {
--	      while (classNames == null) {
--		if (!configFiles.hasMoreElements())
--		  return false;
--		classNames = parseConfigFile((URL)configFiles.nextElement());
--	      }
--	      while (classNames.hasMoreElements()) {
--		String className = (String)classNames.nextElement();
--		try {
--		  Class cls = loader.loadClass(className);
--		  Object obj = cls.newInstance();
--		  if (serviceClass.isInstance(obj)) {
--		    providers.addElement(obj);
--		    return true;
--		  }
--		}
--		catch (ClassNotFoundException e) { }
--		catch (InstantiationException e) { }
--		catch (IllegalAccessException e) { }
--		catch (LinkageError e) { }
--	      }
--	      classNames = null;
--	    }
--	  }
--
--	  private static final int START = 0;
--	  private static final int IN_NAME = 1;
--	  private static final int IN_COMMENT = 2;
--
--	  private static Enumeration parseConfigFile(URL url) {
--	    try {
--	      InputStream in = url.openStream();
--	      Reader r;
--	      try {
--		r = new InputStreamReader(in, "UTF-8");
--	      }
--	      catch (UnsupportedEncodingException e) {
--		r = new InputStreamReader(in, "UTF8");
--	      }
--	      r = new BufferedReader(r);
--	      Vector tokens = new Vector();
--	      StringBuffer tokenBuf = new StringBuffer();
--	      int state = START;
--	      for (;;) {
--		int n = r.read();
--		if (n < 0)
--		  break;
--		char c = (char)n;
--		switch (c) {
--		case '\r':
--		case '\n':
--		  state = START;
--		  break;
--		case ' ':
--		case '\t':
--		  break;
--		case '#':
--		  state = IN_COMMENT;
--		  break;
--		default:
--		  if (state != IN_COMMENT) {
--		    state = IN_NAME;
--		    tokenBuf.append(c);
--		  }
--		  break;
--		}
--		if (tokenBuf.length() != 0 && state != IN_NAME) {
--		  tokens.addElement(tokenBuf.toString());
--		  tokenBuf.setLength(0);
--		}
--	      }
--	      if (tokenBuf.length() != 0)
--		tokens.addElement(tokenBuf.toString());
--	      return tokens.elements();
--	    }
--	    catch (IOException e) {
--	      return null;
--	    }
--	  }
--	}
--  
--}
--
-+/**
-+ * Copyright (c) 2001, Thai Open Source Software Center Ltd
-+ * All rights reserved.
-+ * 
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions are
-+ * met:
-+ * 
-+ *     Redistributions of source code must retain the above copyright
-+ *     notice, this list of conditions and the following disclaimer.
-+ * 
-+ *     Redistributions in binary form must reproduce the above copyright
-+ *     notice, this list of conditions and the following disclaimer in
-+ *     the documentation and/or other materials provided with the
-+ *     distribution.
-+ * 
-+ *     Neither the name of the Thai Open Source Software Center Ltd nor
-+ *     the names of its contributors may be used to endorse or promote
-+ *     products derived from this software without specific prior written
-+ *     permission.
-+ * 
-+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
-+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ */
-+package org.relaxng.datatype.helpers;
-+
-+import org.relaxng.datatype.DatatypeLibraryFactory;
-+import org.relaxng.datatype.DatatypeLibrary;
-+import java.util.Enumeration;
-+import java.util.NoSuchElementException;
-+import java.util.Vector;
-+import java.io.Reader;
-+import java.io.InputStream;
-+import java.io.InputStreamReader;
-+import java.io.BufferedReader;
-+import java.io.IOException;
-+import java.io.UnsupportedEncodingException;
-+import java.net.URL;
-+
-+/**
-+ * Discovers the datatype library implementation from the classpath.
-+ * 
-+ * <p>
-+ * The call of the createDatatypeLibrary method finds an implementation
-+ * from a given datatype library URI at run-time.
-+ */
-+public class DatatypeLibraryLoader implements DatatypeLibraryFactory {
-+  private final Service service = new Service(DatatypeLibraryFactory.class);
-+
-+  public DatatypeLibrary createDatatypeLibrary(String uri) {
-+    for (Enumeration e = service.getProviders();
-+	 e.hasMoreElements();) {
-+      DatatypeLibraryFactory factory
-+	= (DatatypeLibraryFactory)e.nextElement();
-+      DatatypeLibrary library = factory.createDatatypeLibrary(uri);
-+      if (library != null)
-+	return library;
-+    }
-+    return null;
-+  }
-+
-+	private static class Service {
-+	  private final Class serviceClass;
-+	  private final Enumeration configFiles;
-+	  private Enumeration classNames = null;
-+	  private final Vector providers = new Vector();
-+	  private Loader loader;
-+
-+	  private class ProviderEnumeration implements Enumeration {
-+	    private int nextIndex = 0;
-+
-+	    public boolean hasMoreElements() {
-+	      return nextIndex < providers.size() || moreProviders();
-+	    }
-+
-+	    public Object nextElement() {
-+	      try {
-+		return providers.elementAt(nextIndex++);
-+	      }
-+	      catch (ArrayIndexOutOfBoundsException e) {
-+		throw new NoSuchElementException();
-+	      }
-+	    }
-+	  }
-+
-+	  private static class Singleton implements Enumeration {
-+	    private Object obj;
-+	    private Singleton(Object obj) {
-+	      this.obj = obj;
-+	    }
-+
-+	    public boolean hasMoreElements() {
-+	      return obj != null;
-+	    }
-+
-+	    public Object nextElement() {
-+	      if (obj == null)
-+		throw new NoSuchElementException();
-+	      Object tem = obj;
-+	      obj = null;
-+	      return tem;
-+	    }
-+	  }
-+
-+	  // JDK 1.1
-+	  private static class Loader {
-+	    Enumeration getResources(String resName) {
-+	      ClassLoader cl = Loader.class.getClassLoader();
-+	      URL url;
-+	      if (cl == null)
-+		url = ClassLoader.getSystemResource(resName);
-+	      else
-+		url = cl.getResource(resName);
-+	      return new Singleton(url);
-+	    }
-+
-+	    Class loadClass(String name) throws ClassNotFoundException {
-+	      return Class.forName(name);
-+	    }
-+	  }
-+
-+	  // JDK 1.2+
-+	  private static class Loader2 extends Loader {
-+	    private ClassLoader cl;
-+
-+	    Loader2() {
-+	      cl = Loader2.class.getClassLoader();
-+	      // If the thread context class loader has the class loader
-+	      // of this class as an ancestor, use the thread context class
-+	      // loader.  Otherwise, the thread context class loader
-+	      // probably hasn't been set up properly, so don't use it.
-+	      ClassLoader clt = Thread.currentThread().getContextClassLoader();
-+	      for (ClassLoader tem = clt; tem != null; tem = tem.getParent())
-+		if (tem == cl) {
-+		  cl = clt;
-+		  break;
-+		}
-+	    }
-+
-+	    Enumeration getResources(String resName) {
-+	      try {
-+		return cl.getResources(resName);
-+	      }
-+	      catch (IOException e) {
-+		return new Singleton(null);
-+	      }
-+	    }
-+
-+	    Class loadClass(String name) throws ClassNotFoundException {
-+	      return Class.forName(name, true, cl);
-+	    }
-+	  }
-+
-+	  public Service(Class cls) {
-+	    try {
-+	      loader = new Loader2();
-+	    }
-+	    catch (NoSuchMethodError e) {
-+	      loader = new Loader();
-+	    }
-+	    serviceClass = cls;
-+	    String resName = "META-INF/services/" + serviceClass.getName();
-+	    configFiles = loader.getResources(resName);
-+	  }
-+
-+	  public Enumeration getProviders() {
-+	    return new ProviderEnumeration();
-+	  }
-+
-+	  synchronized private boolean moreProviders() {
-+	    for (;;) {
-+	      while (classNames == null) {
-+		if (!configFiles.hasMoreElements())
-+		  return false;
-+		classNames = parseConfigFile((URL)configFiles.nextElement());
-+	      }
-+	      while (classNames.hasMoreElements()) {
-+		String className = (String)classNames.nextElement();
-+		try {
-+		  Class cls = loader.loadClass(className);
-+		  Object obj = cls.newInstance();
-+		  if (serviceClass.isInstance(obj)) {
-+		    providers.addElement(obj);
-+		    return true;
-+		  }
-+		}
-+		catch (ClassNotFoundException e) { }
-+		catch (InstantiationException e) { }
-+		catch (IllegalAccessException e) { }
-+		catch (LinkageError e) { }
-+	      }
-+	      classNames = null;
-+	    }
-+	  }
-+
-+	  private static final int START = 0;
-+	  private static final int IN_NAME = 1;
-+	  private static final int IN_COMMENT = 2;
-+
-+	  private static Enumeration parseConfigFile(URL url) {
-+	    try {
-+	      InputStream in = url.openStream();
-+	      Reader r;
-+	      try {
-+		r = new InputStreamReader(in, "UTF-8");
-+	      }
-+	      catch (UnsupportedEncodingException e) {
-+		r = new InputStreamReader(in, "UTF8");
-+	      }
-+	      r = new BufferedReader(r);
-+	      Vector tokens = new Vector();
-+	      StringBuffer tokenBuf = new StringBuffer();
-+	      int state = START;
-+	      for (;;) {
-+		int n = r.read();
-+		if (n < 0)
-+		  break;
-+		char c = (char)n;
-+		switch (c) {
-+		case '\r':
-+		case '\n':
-+		  state = START;
-+		  break;
-+		case ' ':
-+		case '\t':
-+		  break;
-+		case '#':
-+		  state = IN_COMMENT;
-+		  break;
-+		default:
-+		  if (state != IN_COMMENT) {
-+		    state = IN_NAME;
-+		    tokenBuf.append(c);
-+		  }
-+		  break;
-+		}
-+		if (tokenBuf.length() != 0 && state != IN_NAME) {
-+		  tokens.addElement(tokenBuf.toString());
-+		  tokenBuf.setLength(0);
-+		}
-+	      }
-+	      if (tokenBuf.length() != 0)
-+		tokens.addElement(tokenBuf.toString());
-+	      return tokens.elements();
-+	    }
-+	    catch (IOException e) {
-+	      return null;
-+	    }
-+	  }
-+	}
-+  
-+}
-+
-diff -Nrup gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/helpers/ParameterlessDatatypeBuilder.java gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/helpers/ParameterlessDatatypeBuilder.java
---- gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/helpers/ParameterlessDatatypeBuilder.java	2006-03-10 14:25:35.000000000 +0100
-+++ gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/helpers/ParameterlessDatatypeBuilder.java	2007-09-28 10:34:16.000000000 +0200
-@@ -1,42 +1,42 @@
--package org.relaxng.datatype.helpers;
--
--import org.relaxng.datatype.*;
--
--/**
-- * Dummy implementation of {@link DatatypeBuilder}.
-- * 
-- * This implementation can be used for Datatypes which have no parameters.
-- * Any attempt to add parameters will be rejected.
-- * 
-- * <p>
-- * Typical usage would be:
-- * <PRE><XMP>
-- * class MyDatatypeLibrary implements DatatypeLibrary {
-- *     ....
-- *     DatatypeBuilder createDatatypeBuilder( String typeName ) {
-- *         return new ParameterleessDatatypeBuilder(createDatatype(typeName));
-- *     }
-- *     ....
-- * }
-- * </XMP></PRE>
-- * 
-- * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-- */
--public final class ParameterlessDatatypeBuilder implements DatatypeBuilder {
--
--	/** This type object is returned for the derive method. */
--	private final Datatype baseType;
--	
--	public ParameterlessDatatypeBuilder( Datatype baseType ) {
--		this.baseType = baseType;
--	}
--	
--	public void addParameter( String name, String strValue, ValidationContext context )
--			throws DatatypeException {
--		throw new DatatypeException();
--	}
--	
--	public Datatype createDatatype() throws DatatypeException {
--		return baseType;
--	}
--}
-+package org.relaxng.datatype.helpers;
-+
-+import org.relaxng.datatype.*;
-+
-+/**
-+ * Dummy implementation of {@link DatatypeBuilder}.
-+ * 
-+ * This implementation can be used for Datatypes which have no parameters.
-+ * Any attempt to add parameters will be rejected.
-+ * 
-+ * <p>
-+ * Typical usage would be:
-+ * <PRE><XMP>
-+ * class MyDatatypeLibrary implements DatatypeLibrary {
-+ *     ....
-+ *     DatatypeBuilder createDatatypeBuilder( String typeName ) {
-+ *         return new ParameterleessDatatypeBuilder(createDatatype(typeName));
-+ *     }
-+ *     ....
-+ * }
-+ * </XMP></PRE>
-+ * 
-+ * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-+ */
-+public final class ParameterlessDatatypeBuilder implements DatatypeBuilder {
-+
-+	/** This type object is returned for the derive method. */
-+	private final Datatype baseType;
-+	
-+	public ParameterlessDatatypeBuilder( Datatype baseType ) {
-+		this.baseType = baseType;
-+	}
-+	
-+	public void addParameter( String name, String strValue, ValidationContext context )
-+			throws DatatypeException {
-+		throw new DatatypeException();
-+	}
-+	
-+	public Datatype createDatatype() throws DatatypeException {
-+		return baseType;
-+	}
-+}
-diff -Nrup gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/helpers/StreamingValidatorImpl.java gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/helpers/StreamingValidatorImpl.java
---- gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/helpers/StreamingValidatorImpl.java	2006-03-10 14:25:35.000000000 +0100
-+++ gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/helpers/StreamingValidatorImpl.java	2007-09-28 10:34:16.000000000 +0200
-@@ -1,55 +1,55 @@
--package org.relaxng.datatype.helpers;
--
--import org.relaxng.datatype.*;
--
--/**
-- * Dummy implementation of {@link DatatypeStreamingValidator}.
-- * 
-- * <p>
-- * This implementation can be used as a quick hack when the performance
-- * of streaming validation is not important. And this implementation
-- * also shows you how to implement the DatatypeStreamingValidator interface.
-- * 
-- * <p>
-- * Typical usage would be:
-- * <PRE><XMP>
-- * class MyDatatype implements Datatype {
-- *     ....
-- *     public DatatypeStreamingValidator createStreamingValidator( ValidationContext context ) {
-- *         return new StreamingValidatorImpl(this,context);
-- *     }
-- *     ....
-- * }
-- * </XMP></PRE>
-- * 
-- * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-- */
--public final class StreamingValidatorImpl implements DatatypeStreamingValidator {
--	
--	/** This buffer accumulates characters. */
--	private final StringBuffer buffer = new StringBuffer();
--	
--	/** Datatype obejct that creates this streaming validator. */
--	private final Datatype baseType;
--	
--	/** The current context. */
--	private final ValidationContext context;
--	
--	public void addCharacters( char[] buf, int start, int len ) {
--		// append characters to the current buffer.
--		buffer.append(buf,start,len);
--	}
--	
--	public boolean isValid() {
--		return baseType.isValid(buffer.toString(),context);
--	}
--	
--	public void checkValid() throws DatatypeException {
--		baseType.checkValid(buffer.toString(),context);
--	}
--	
--	public StreamingValidatorImpl( Datatype baseType, ValidationContext context ) {
--		this.baseType = baseType;
--		this.context = context;
--	}
--}
-+package org.relaxng.datatype.helpers;
-+
-+import org.relaxng.datatype.*;
-+
-+/**
-+ * Dummy implementation of {@link DatatypeStreamingValidator}.
-+ * 
-+ * <p>
-+ * This implementation can be used as a quick hack when the performance
-+ * of streaming validation is not important. And this implementation
-+ * also shows you how to implement the DatatypeStreamingValidator interface.
-+ * 
-+ * <p>
-+ * Typical usage would be:
-+ * <PRE><XMP>
-+ * class MyDatatype implements Datatype {
-+ *     ....
-+ *     public DatatypeStreamingValidator createStreamingValidator( ValidationContext context ) {
-+ *         return new StreamingValidatorImpl(this,context);
-+ *     }
-+ *     ....
-+ * }
-+ * </XMP></PRE>
-+ * 
-+ * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-+ */
-+public final class StreamingValidatorImpl implements DatatypeStreamingValidator {
-+	
-+	/** This buffer accumulates characters. */
-+	private final StringBuffer buffer = new StringBuffer();
-+	
-+	/** Datatype obejct that creates this streaming validator. */
-+	private final Datatype baseType;
-+	
-+	/** The current context. */
-+	private final ValidationContext context;
-+	
-+	public void addCharacters( char[] buf, int start, int len ) {
-+		// append characters to the current buffer.
-+		buffer.append(buf,start,len);
-+	}
-+	
-+	public boolean isValid() {
-+		return baseType.isValid(buffer.toString(),context);
-+	}
-+	
-+	public void checkValid() throws DatatypeException {
-+		baseType.checkValid(buffer.toString(),context);
-+	}
-+	
-+	public StreamingValidatorImpl( Datatype baseType, ValidationContext context ) {
-+		this.baseType = baseType;
-+		this.context = context;
-+	}
-+}
-diff -Nrup gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/ValidationContext.java gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/ValidationContext.java
---- gcc-4.2.1/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/ValidationContext.java	2006-03-10 14:25:35.000000000 +0100
-+++ gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/org/relaxng/datatype/ValidationContext.java	2007-09-28 10:34:16.000000000 +0200
-@@ -1,66 +1,66 @@
--package org.relaxng.datatype;
--
--/**
-- * An interface that must be implemented by caller to
-- * provide context information that is necessary to 
-- * perform validation of some Datatypes.
-- * 
-- * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-- * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-- */
--public interface ValidationContext {
--	
--	/**
--	 * Resolves a namespace prefix to the corresponding namespace URI.
--	 * 
--	 * This method is used for validating the QName type, for example.
--	 *
--	 * <p>
--	 * If the prefix is "" (empty string), it indicates
--	 * an unprefixed value. The callee
--	 * should resolve it as for an unprefixed
--	 * element, rather than for an unprefixed attribute.
--	 * 
--	 * <p>
--	 * If the prefix is "xml", then the callee must resolve
--	 * this prefix into "http://www.w3.org/XML/1998/namespace",
--	 * as defined in the XML Namespaces Recommendation.
--	 * 
--	 * @return
--	 *		namespace URI of this prefix.
--	 *		If the specified prefix is not declared,
--	 *		the implementation must return null.
--	 */
--	String resolveNamespacePrefix( String prefix );
--
--	/**
--	 * Returns the base URI of the context.  The null string may be returned
--	 * if no base URI is known.
--	 */
--	String getBaseUri();
--
--	/**
--	 * Checks if an unparsed entity is declared with the
--	 * specified name.
--	 * 
--	 * @return
--	 *  true
--	 *		if the DTD has an unparsed entity declaration for
--	 *		the specified name.
--	 *  false
--	 *		otherwise.
--	 */
--	boolean isUnparsedEntity( String entityName );
--
--	/**
--	 * Checks if a notation is declared with the
--	 * specified name.
--	 * 
--	 * @return
--	 *  true
--	 *		if the DTD has a notation declaration for the specified name.
--	 *  false
--	 *		otherwise.
--	 */
--	boolean isNotation( String notationName );
--}
-+package org.relaxng.datatype;
-+
-+/**
-+ * An interface that must be implemented by caller to
-+ * provide context information that is necessary to 
-+ * perform validation of some Datatypes.
-+ * 
-+ * @author <a href="mailto:jjc@jclark.com">James Clark</a>
-+ * @author <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
-+ */
-+public interface ValidationContext {
-+	
-+	/**
-+	 * Resolves a namespace prefix to the corresponding namespace URI.
-+	 * 
-+	 * This method is used for validating the QName type, for example.
-+	 *
-+	 * <p>
-+	 * If the prefix is "" (empty string), it indicates
-+	 * an unprefixed value. The callee
-+	 * should resolve it as for an unprefixed
-+	 * element, rather than for an unprefixed attribute.
-+	 * 
-+	 * <p>
-+	 * If the prefix is "xml", then the callee must resolve
-+	 * this prefix into "http://www.w3.org/XML/1998/namespace",
-+	 * as defined in the XML Namespaces Recommendation.
-+	 * 
-+	 * @return
-+	 *		namespace URI of this prefix.
-+	 *		If the specified prefix is not declared,
-+	 *		the implementation must return null.
-+	 */
-+	String resolveNamespacePrefix( String prefix );
-+
-+	/**
-+	 * Returns the base URI of the context.  The null string may be returned
-+	 * if no base URI is known.
-+	 */
-+	String getBaseUri();
-+
-+	/**
-+	 * Checks if an unparsed entity is declared with the
-+	 * specified name.
-+	 * 
-+	 * @return
-+	 *  true
-+	 *		if the DTD has an unparsed entity declaration for
-+	 *		the specified name.
-+	 *  false
-+	 *		otherwise.
-+	 */
-+	boolean isUnparsedEntity( String entityName );
-+
-+	/**
-+	 * Checks if a notation is declared with the
-+	 * specified name.
-+	 * 
-+	 * @return
-+	 *  true
-+	 *		if the DTD has a notation declaration for the specified name.
-+	 *  false
-+	 *		otherwise.
-+	 */
-+	boolean isNotation( String notationName );
-+}
-diff -Nrup gcc-4.2.1/libjava/classpath/external/relaxngDatatype/README.txt gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/README.txt
---- gcc-4.2.1/libjava/classpath/external/relaxngDatatype/README.txt	2006-03-10 14:25:35.000000000 +0100
-+++ gcc-4.2.1.atmel.1.3.2/libjava/classpath/external/relaxngDatatype/README.txt	2007-09-28 10:34:16.000000000 +0200
-@@ -1,54 +1,54 @@
--======================================================================
--           README FILE FOR DATATYPE INTERFACES FOR RELAX NG
--======================================================================
--
--
--
--RELAX NG supports multiple datatype vocabularies. To achive this, an
--interface between datatype vocabularies and schema processors is 
--necessary. This interface is intended to be a standard Java interface
--for this purpose.
--
--
------------------------------------------------------------------------
--LICENSE
------------------------------------------------------------------------
--
--See copying.txt.
--
--Note: this license is the BSD license.
--
--
--
------------------------------------------------------------------------
--FOR DEVELOPER
------------------------------------------------------------------------
--
--If you are planning to implement a datatype library, A sample datatype
--library implementation by James Clark is available at [1], which
--comes with documentation and source code.
--
--If you are planning to implement a schema processor, then don't forget
--to check out org.relaxng.datatype.helpers.DatatypeLibraryLoader, as 
--this allows you to dynamically locate datatype implementations.
--
--
------------------------------------------------------------------------
--LINKS
------------------------------------------------------------------------
--
--* OASIS RELAX NG TC
--   http://www.oasis-open.org/committees/relax-ng/
--* RELAX home page
--   http://www.xml.gr.jp/relax/
--
--
------------------------------------------------------------------------
--REFERENCES
------------------------------------------------------------------------
--[1] Sample datatype library implementation by James Clark
--    http://www.thaiopensource.com/relaxng/datatype-sample.zip
--
--Document written by Kohsuke Kawaguchi (kohsuke.kawaguchi@sun.com)
--======================================================================
--END OF README
-+======================================================================
-+           README FILE FOR DATATYPE INTERFACES FOR RELAX NG
-+======================================================================
-+
-+
-+
-+RELAX NG supports multiple datatype vocabularies. To achive this, an
-+interface between datatype vocabularies and schema processors is 
-+necessary. This interface is intended to be a standard Java interface
-+for this purpose.
-+
-+
-+----------------------------------------------------------------------
-+LICENSE
-+----------------------------------------------------------------------
-+
-+See copying.txt.
-+
-+Note: this license is the BSD license.
-+
-+
-+
-+----------------------------------------------------------------------
-+FOR DEVELOPER
-+----------------------------------------------------------------------
-+
-+If you are planning to implement a datatype library, A sample datatype
-+library implementation by James Clark is available at [1], which
-+comes with documentation and source code.
-+
-+If you are planning to implement a schema processor, then don't forget
-+to check out org.relaxng.datatype.helpers.DatatypeLibraryLoader, as 
-+this allows you to dynamically locate datatype implementations.
-+
-+
-+----------------------------------------------------------------------
-+LINKS
-+----------------------------------------------------------------------
-+
-+* OASIS RELAX NG TC
-+   http://www.oasis-open.org/committees/relax-ng/
-+* RELAX home page
-+   http://www.xml.gr.jp/relax/
-+
-+
-+----------------------------------------------------------------------
-+REFERENCES
-+----------------------------------------------------------------------
-+[1] Sample datatype library implementation by James Clark
-+    http://www.thaiopensource.com/relaxng/datatype-sample.zip
-+
-+Document written by Kohsuke Kawaguchi (kohsuke.kawaguchi@sun.com)
-+======================================================================
-+END OF README
+
 diff -Nrup gcc-4.2.1/libstdc++-v3/acinclude.m4 gcc-4.2.1.atmel.1.3.2/libstdc++-v3/acinclude.m4
 --- gcc-4.2.1/libstdc++-v3/acinclude.m4	2007-06-29 01:02:05.000000000 +0200
 +++ gcc-4.2.1.atmel.1.3.2/libstdc++-v3/acinclude.m4	2007-09-28 10:33:34.000000000 +0200
@@ -22457,8 +20529,8 @@ diff -Nrup gcc-4.2.1/libstdc++-v3/acinclude.m4 gcc-4.2.1.atmel.1.3.2/libstdc++-v
        #endif
        int main()
        {
--	const char __one[] = "Äuglein Augmen";
--        const char __two[] = "Äuglein";
+-	const char __one[] = "�uglein Augmen";
+-        const char __two[] = "�uglein";
 +	const char __one[] = "Äuglein Augmen";
 +        const char __two[] = "Äuglein";
         	int i;

+ 0 - 0
toolchain/gcc/4.2.1/901-avr32-add-mno-pic.patch → toolchain/gcc/4.2.1/avr32_patches_break_x86/901-avr32-add-mno-pic.patch


+ 0 - 0
toolchain/gcc/4.2.1/902-avr32-fix-pic-redefinition-warning.patch → toolchain/gcc/4.2.1/avr32_patches_break_x86/902-avr32-fix-pic-redefinition-warning.patch


+ 0 - 0
toolchain/gcc/4.2.1/903-avr32-fix-expanding-builtin-xchg.patch → toolchain/gcc/4.2.1/avr32_patches_break_x86/903-avr32-fix-expanding-builtin-xchg.patch


+ 0 - 0
toolchain/gcc/4.2.1/905-avr32-fix-folding-machine-reorg-optimizations.patch → toolchain/gcc/4.2.1/avr32_patches_break_x86/905-avr32-fix-folding-machine-reorg-optimizations.patch


+ 0 - 0
toolchain/gcc/4.2.1/906-avr32-use-rjmp-instead-of-got-when-jumping.patch → toolchain/gcc/4.2.1/avr32_patches_break_x86/906-avr32-use-rjmp-instead-of-got-when-jumping.patch


+ 0 - 0
toolchain/gcc/4.2.1/908-avr32-fix-invalid-assembler-code-on-64bit-hosts.patch → toolchain/gcc/4.2.1/avr32_patches_break_x86/908-avr32-fix-invalid-assembler-code-on-64bit-hosts.patch