blob: e51818109764c94a35fcff2d2219202f500749cd [file] [log] [blame]
// Copyright (c) 2019, 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 com.android.tools.r8.shaking.keptgraph;
import com.android.tools.r8.Keep;
@Keep
public class KeptByFieldReflectionTest {
// TODO(b/123262024): This field must be kept un-initialized. Otherwise the "-whyareyoukeeping"
// output tested will hit the initialization in <init> and not the reflective access.
public int foo;
public static void main(String[] args) throws Exception {
// Due to b/123210548 the object cannot be created by a reflective newInstance call.
KeptByFieldReflectionTest obj = new KeptByFieldReflectionTest();
System.out.println("got foo: " + KeptByFieldReflectionTest.class.getField("foo").getInt(obj));
}
}