Initial push.
diff --git a/src/test/examples/memberrebinding/Test.java b/src/test/examples/memberrebinding/Test.java
new file mode 100644
index 0000000..ba5e2f0
--- /dev/null
+++ b/src/test/examples/memberrebinding/Test.java
@@ -0,0 +1,37 @@
+// Copyright (c) 2016, the R8 project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+package memberrebinding;
+
+import memberrebinding.subpackage.PublicClass;
+import memberrebindinglib.AnIndependentInterface;
+
+public class Test {
+
+ public static void main(String[] args) {
+ ClassAtBottomOfChain bottomInstance = new ClassAtBottomOfChain();
+ bottomInstance.superCallsProperlyPropagate();
+ bottomInstance.methodThatCallsSuperCallsProperlyPropagateTwo();
+ bottomInstance.methodThatShadowsPrivate();
+ bottomInstance.ensureAllCalled();
+ System.out.println(bottomInstance.superField);
+ ClassExtendsLibraryClass classExtendsLibraryClass = new ClassExtendsLibraryClass();
+ classExtendsLibraryClass.methodThatAddsHelloWorld();
+ classExtendsLibraryClass.methodThatAddsHelloWorldUsingAddAll();
+ System.out.println(classExtendsLibraryClass.get(0));
+ System.out.println(classExtendsLibraryClass.get(1));
+ System.out.println(classExtendsLibraryClass.get(2));
+ PublicClass instance = new PublicClass();
+ instance.aMethod();
+ ClassExtendsOtherLibraryClass classExtendsOther = new ClassExtendsOtherLibraryClass();
+ System.out.println(classExtendsOther.aMethodThatReturnsOne());
+ System.out.println(classExtendsOther.aMethodThatReturnsTwo());
+ System.out.println(classExtendsOther.aMethodThatReturnsThree());
+ System.out.println(classExtendsOther.aMethodThatReturnsFour());
+ AnIndependentInterface iface = classExtendsOther;
+ System.out.println(iface.aMethodThatReturnsTwo());
+ SuperClassOfClassExtendsOtherLibraryClass superClass = classExtendsOther;
+ System.out.println(superClass.aMethodThatReturnsTrue());
+ System.out.println(superClass.aMethodThatReturnsFalse());
+ }
+}