Update jdt.core to I20200916-1800 (after merge of BETA_JAVA15)

- includes first set of fixes to reconcile Java 15 with OT/J
diff --git a/JCL/converterJclMin10/.classpath b/JCL/converterJclMin10/.classpath
new file mode 100644
index 0000000..6df3186
--- /dev/null
+++ b/JCL/converterJclMin10/.classpath
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-10"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/JCL/converterJclMin10/.project b/JCL/converterJclMin10/.project
new file mode 100644
index 0000000..a6fd02c
--- /dev/null
+++ b/JCL/converterJclMin10/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>converterJclMin10</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/JCL/converterJclMin10/.settings/org.eclipse.jdt.core.prefs b/JCL/converterJclMin10/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..a15d78d
--- /dev/null
+++ b/JCL/converterJclMin10/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,15 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=10
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=10
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=10
diff --git a/JCL/converterJclMin10/src/java/io/Serializable.java b/JCL/converterJclMin10/src/java/io/Serializable.java
new file mode 100644
index 0000000..3629567
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/io/Serializable.java
@@ -0,0 +1,4 @@
+package java.io;
+
+public interface Serializable {
+}
diff --git a/JCL/converterJclMin10/src/java/lang/CharSequence.java b/JCL/converterJclMin10/src/java/lang/CharSequence.java
new file mode 100644
index 0000000..b03fc9e
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/CharSequence.java
@@ -0,0 +1,5 @@
+package java.lang;
+
+public interface CharSequence {
+	int length();
+}
diff --git a/JCL/converterJclMin10/src/java/lang/Class.java b/JCL/converterJclMin10/src/java/lang/Class.java
new file mode 100644
index 0000000..7d08bf1
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/Class.java
@@ -0,0 +1,4 @@
+package java.lang;
+
+public class Class<T> {
+}
diff --git a/JCL/converterJclMin10/src/java/lang/CloneNotSupportedException.java b/JCL/converterJclMin10/src/java/lang/CloneNotSupportedException.java
new file mode 100644
index 0000000..6f05a93
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/CloneNotSupportedException.java
@@ -0,0 +1,4 @@
+package java.lang;
+
+public class CloneNotSupportedException extends Exception {
+}
diff --git a/JCL/converterJclMin10/src/java/lang/Comparable.java b/JCL/converterJclMin10/src/java/lang/Comparable.java
new file mode 100644
index 0000000..59fb9ed
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/Comparable.java
@@ -0,0 +1,4 @@
+package java.lang;
+
+public interface Comparable<T> {
+}
diff --git a/JCL/converterJclMin10/src/java/lang/Deprecated.java b/JCL/converterJclMin10/src/java/lang/Deprecated.java
new file mode 100644
index 0000000..5226e58
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/Deprecated.java
@@ -0,0 +1,6 @@
+package java.lang;
+import java.lang.annotation.*;
+@Documented
+@Retention(RetentionPolicy.RUNTIME)
+public @interface Deprecated {
+}
\ No newline at end of file
diff --git a/JCL/converterJclMin10/src/java/lang/Enum.java b/JCL/converterJclMin10/src/java/lang/Enum.java
new file mode 100644
index 0000000..d95e7ae
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/Enum.java
@@ -0,0 +1,14 @@
+package java.lang;
+
+public abstract class Enum<T extends Enum<T>> implements Comparable<T>, java.io.Serializable {
+	private static final long serialVersionUID = 2L;
+
+	protected Enum(String name, int ordinal) {
+	}
+	public final String name() {
+		return null;
+	}
+	public final int ordinal() {
+		return 0;
+	}
+}
\ No newline at end of file
diff --git a/JCL/converterJclMin10/src/java/lang/Error.java b/JCL/converterJclMin10/src/java/lang/Error.java
new file mode 100644
index 0000000..02f4405
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/Error.java
@@ -0,0 +1,4 @@
+package java.lang;
+
+public class Error extends Throwable {
+}
diff --git a/JCL/converterJclMin10/src/java/lang/Exception.java b/JCL/converterJclMin10/src/java/lang/Exception.java
new file mode 100644
index 0000000..6e3cf32
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/Exception.java
@@ -0,0 +1,4 @@
+package java.lang;
+
+public class Exception extends Throwable {
+}
diff --git a/JCL/converterJclMin10/src/java/lang/IllegalAccessException.java b/JCL/converterJclMin10/src/java/lang/IllegalAccessException.java
new file mode 100644
index 0000000..0d13e1e
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/IllegalAccessException.java
@@ -0,0 +1,5 @@
+package java.lang;
+
+public class IllegalAccessException extends RuntimeException {
+
+}
diff --git a/JCL/converterJclMin10/src/java/lang/IllegalMonitorStateException.java b/JCL/converterJclMin10/src/java/lang/IllegalMonitorStateException.java
new file mode 100644
index 0000000..1f67418
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/IllegalMonitorStateException.java
@@ -0,0 +1,4 @@
+package java.lang;
+
+public class IllegalMonitorStateException extends RuntimeException {
+}
diff --git a/JCL/converterJclMin10/src/java/lang/InterruptedException.java b/JCL/converterJclMin10/src/java/lang/InterruptedException.java
new file mode 100644
index 0000000..93b236c
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/InterruptedException.java
@@ -0,0 +1,4 @@
+package java.lang;
+
+public class InterruptedException extends Exception {
+}
diff --git a/JCL/converterJclMin10/src/java/lang/NoSuchMethodException.java b/JCL/converterJclMin10/src/java/lang/NoSuchMethodException.java
new file mode 100644
index 0000000..3dd142b
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/NoSuchMethodException.java
@@ -0,0 +1,5 @@
+package java.lang;
+
+public class NoSuchMethodException extends RuntimeException {
+
+}
diff --git a/JCL/converterJclMin10/src/java/lang/Object.java b/JCL/converterJclMin10/src/java/lang/Object.java
new file mode 100644
index 0000000..71ddb4f
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/Object.java
@@ -0,0 +1,34 @@
+package java.lang;
+
+public class Object {
+
+public Object() {
+}
+protected Object clone() throws CloneNotSupportedException {
+	return null;
+}
+public boolean equals (Object obj) {
+	return false;
+}
+protected void finalize () throws Throwable {
+}
+public final Class<? extends Object> getClass() {
+	return null;
+}
+public int hashCode() {
+	return -1;
+}
+public final void notify() throws IllegalMonitorStateException {
+}
+public final void notifyAll() throws IllegalMonitorStateException {
+}
+public String toString () {
+	return null;
+}
+public final void wait () throws IllegalMonitorStateException, InterruptedException {
+}
+public final void wait (long millis) throws IllegalMonitorStateException, InterruptedException {
+}
+public final void wait (long millis, int nanos) throws IllegalMonitorStateException, InterruptedException {
+}
+}
diff --git a/JCL/converterJclMin10/src/java/lang/RuntimeException.java b/JCL/converterJclMin10/src/java/lang/RuntimeException.java
new file mode 100644
index 0000000..3be7f77
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/RuntimeException.java
@@ -0,0 +1,4 @@
+package java.lang;
+
+public class RuntimeException extends Exception {
+}
diff --git a/JCL/converterJclMin10/src/java/lang/String.java b/JCL/converterJclMin10/src/java/lang/String.java
new file mode 100644
index 0000000..38fc3e3
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/String.java
@@ -0,0 +1,5 @@
+package java.lang;
+
+public class String implements CharSequence {
+	public int length() { return 0; }
+}
diff --git a/JCL/converterJclMin10/src/java/lang/Throwable.java b/JCL/converterJclMin10/src/java/lang/Throwable.java
new file mode 100644
index 0000000..031917c
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/Throwable.java
@@ -0,0 +1,4 @@
+package java.lang;
+
+public class Throwable {
+}
diff --git a/JCL/converterJclMin10/src/java/lang/annotation/Annotation.java b/JCL/converterJclMin10/src/java/lang/annotation/Annotation.java
new file mode 100644
index 0000000..530c272
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/annotation/Annotation.java
@@ -0,0 +1,4 @@
+package java.lang.annotation;
+public interface Annotation {
+
+}
diff --git a/JCL/converterJclMin10/src/java/lang/annotation/Documented.java b/JCL/converterJclMin10/src/java/lang/annotation/Documented.java
new file mode 100644
index 0000000..840d0f4
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/annotation/Documented.java
@@ -0,0 +1,7 @@
+package java.lang.annotation;
+
+@Documented
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.ANNOTATION_TYPE)
+public @interface Documented {
+}
diff --git a/JCL/converterJclMin10/src/java/lang/annotation/ElementType.java b/JCL/converterJclMin10/src/java/lang/annotation/ElementType.java
new file mode 100644
index 0000000..b6dd0f6
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/annotation/ElementType.java
@@ -0,0 +1,13 @@
+package java.lang.annotation;
+public enum ElementType {
+    ANNOTATION_TYPE,
+    CONSTRUCTOR,
+    FIELD,
+    LOCAL_VARIABLE,
+    METHOD,
+    PACKAGE,
+    PARAMETER,
+    TYPE,
+    TYPE_USE,
+    TYPE_PARAMETER,
+}
diff --git a/JCL/converterJclMin10/src/java/lang/annotation/Inherited.java b/JCL/converterJclMin10/src/java/lang/annotation/Inherited.java
new file mode 100644
index 0000000..ed69c0b
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/annotation/Inherited.java
@@ -0,0 +1,7 @@
+package java.lang.annotation;
+
+@Documented
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.ANNOTATION_TYPE)
+public @interface Inherited {
+}
\ No newline at end of file
diff --git a/JCL/converterJclMin10/src/java/lang/annotation/Retention.java b/JCL/converterJclMin10/src/java/lang/annotation/Retention.java
new file mode 100644
index 0000000..25e8ba7
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/annotation/Retention.java
@@ -0,0 +1,8 @@
+package java.lang.annotation;
+
+@Documented
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.ANNOTATION_TYPE)
+public @interface Retention {
+    RetentionPolicy value();
+}
\ No newline at end of file
diff --git a/JCL/converterJclMin10/src/java/lang/annotation/RetentionPolicy.java b/JCL/converterJclMin10/src/java/lang/annotation/RetentionPolicy.java
new file mode 100644
index 0000000..26349b1
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/annotation/RetentionPolicy.java
@@ -0,0 +1,6 @@
+package java.lang.annotation;
+public enum RetentionPolicy {
+    CLASS,
+    SOURCE,
+    RUNTIME
+}
\ No newline at end of file
diff --git a/JCL/converterJclMin10/src/java/lang/annotation/Target.java b/JCL/converterJclMin10/src/java/lang/annotation/Target.java
new file mode 100644
index 0000000..3ee9c31
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/annotation/Target.java
@@ -0,0 +1,8 @@
+package java.lang.annotation;
+
+@Documented
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.ANNOTATION_TYPE)
+public @interface Target {
+    ElementType[] value();
+}
\ No newline at end of file
diff --git a/JCL/converterJclMin10/src/java/lang/invoke/MethodHandle.java b/JCL/converterJclMin10/src/java/lang/invoke/MethodHandle.java
new file mode 100644
index 0000000..8a1fdd0
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/invoke/MethodHandle.java
@@ -0,0 +1,38 @@
+package java.lang.invoke;
+/*******************************************************************************
+ * Copyright (c) 2011 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
+
+
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+public abstract class MethodHandle {
+	@Target(METHOD)
+	@Retention(RUNTIME)
+	@interface PolymorphicSignature {
+	}
+
+	@PolymorphicSignature
+	public final native Object invoke(Object... args) throws Throwable;
+
+	@PolymorphicSignature
+	public final native Object invokeExact(Object... args) throws Throwable;
+
+	public native Object invokeWithArguments(Object... arguments)
+			throws Throwable;
+
+	public native boolean isVarargsCollector();
+
+	public native MethodHandle asType(MethodType newType);
+}
\ No newline at end of file
diff --git a/JCL/converterJclMin10/src/java/lang/invoke/MethodHandles.java b/JCL/converterJclMin10/src/java/lang/invoke/MethodHandles.java
new file mode 100644
index 0000000..f40dc82
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/invoke/MethodHandles.java
@@ -0,0 +1,21 @@
+package java.lang.invoke;
+
+public class MethodHandles {
+	public static final class Lookup {
+		public MethodHandle findVirtual(Class<?> refc, String name,
+				MethodType type) throws NoSuchMethodException,
+				IllegalAccessException {
+			return null;
+		}
+
+		public MethodHandle findStatic(Class<?> refc, String name,
+				MethodType type) throws NoSuchMethodException,
+				IllegalAccessException {
+			return null;
+		}
+	}
+
+	public static Lookup lookup() {
+		return null;
+	}
+}
diff --git a/JCL/converterJclMin10/src/java/lang/invoke/MethodType.java b/JCL/converterJclMin10/src/java/lang/invoke/MethodType.java
new file mode 100644
index 0000000..90a46dc
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/lang/invoke/MethodType.java
@@ -0,0 +1,17 @@
+package java.lang.invoke;
+
+
+public final class MethodType {
+	public static MethodType methodType(Class<?> rtype, Class<?> ptype0,
+			Class<?>... ptypes) {
+		return null;
+	}
+
+	public static MethodType methodType(Class<?> rtype) {
+		return null;
+	}
+
+	public static MethodType genericMethodType(int objectArgCount) {
+		return null;
+	}
+}
diff --git a/JCL/converterJclMin10/src/java/util/Collection.java b/JCL/converterJclMin10/src/java/util/Collection.java
new file mode 100644
index 0000000..c04e2cd
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/util/Collection.java
@@ -0,0 +1,9 @@
+package java.util;
+
+public interface Collection<T> {
+	public Iterator<T> iterator();
+	public int size();
+	public T get(int index);
+	public boolean addAll(Collection<T> c);
+	public T[] toArray(T[] o);
+}
diff --git a/JCL/converterJclMin10/src/java/util/Iterator.java b/JCL/converterJclMin10/src/java/util/Iterator.java
new file mode 100644
index 0000000..ae53f84
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/util/Iterator.java
@@ -0,0 +1,7 @@
+package java.util;
+
+public interface Iterator<E> {
+    boolean hasNext();
+    E next();
+    void remove();
+}
diff --git a/JCL/converterJclMin10/src/java/util/List.java b/JCL/converterJclMin10/src/java/util/List.java
new file mode 100644
index 0000000..4565ccb
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/util/List.java
@@ -0,0 +1,4 @@
+package java.util;
+
+public interface List<E> extends Collection<E> {
+}
diff --git a/JCL/converterJclMin10/src/java/util/Map.java b/JCL/converterJclMin10/src/java/util/Map.java
new file mode 100644
index 0000000..f47752c
--- /dev/null
+++ b/JCL/converterJclMin10/src/java/util/Map.java
@@ -0,0 +1,5 @@
+package java.util;
+
+public interface Map<K,V> {
+
+}
\ No newline at end of file
diff --git a/JCL/converterJclMin10/src/module-info.java b/JCL/converterJclMin10/src/module-info.java
new file mode 100644
index 0000000..13fd25e
--- /dev/null
+++ b/JCL/converterJclMin10/src/module-info.java
@@ -0,0 +1,7 @@
+module java.base {
+	exports java.lang;
+	exports java.lang.annotation;
+	exports java.lang.invoke;
+	exports java.io;
+	exports java.util;
+}