| // Copyright (c) 2020, 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 horizontalclassmerging; | |
| import com.android.tools.r8.NeverClassInline; | |
| import com.android.tools.r8.NeverInline; | |
| public class BasicNestHostHorizontalClassMerging { | |
| // Prevent merging with BasicNestHostHorizontalClassMerging2. | |
| private String name; | |
| private BasicNestHostHorizontalClassMerging(String name) { | |
| this.name = name; | |
| } | |
| @NeverInline | |
| private void print(String v) { | |
| System.out.println(name + ": " + v); | |
| } | |
| public static void main(String[] args) { | |
| BasicNestHostHorizontalClassMerging host = new BasicNestHostHorizontalClassMerging("1"); | |
| new A(host); | |
| new B(host); | |
| BasicNestHostHorizontalClassMerging2.main(args); | |
| } | |
| @NeverClassInline | |
| public static class A { | |
| public A(BasicNestHostHorizontalClassMerging parent) { | |
| parent.print("a"); | |
| } | |
| } | |
| @NeverClassInline | |
| public static class B { | |
| public B(BasicNestHostHorizontalClassMerging parent) { | |
| parent.print("b"); | |
| } | |
| } | |
| } |