blob: b43bb8bae9d56b69ce76535b8373c56576b1da05 [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;
import com.android.tools.r8.utils.StringUtils;
import org.junit.Test;
class Tester {
public int foo() {
float[][][] fs = new float[1][2][3];
return fs.length;
}
public static void main(String[] args) {
System.out.println(new Tester().foo());
}
}
// The DirectoryClasspathProvider asserts lookups are reference types which witnessed the issue.
public class RegressionForPrimitiveDefinitionForLookup extends TestBase {
public final Class<Tester> CLASS = Tester.class;
public String EXPECTED = StringUtils.lines("1");
@Test
public void testWithArchiveClasspath() throws Exception {
testForD8()
.addClasspathClasses(CLASS)
.addProgramClasses(CLASS)
.run(CLASS)
.assertSuccessWithOutput(EXPECTED);
}
@Test
public void testWithDirectoryClasspath() throws Exception {
testForD8()
.addClasspathFiles(ToolHelper.getClassPathForTests())
.addProgramClasses(CLASS)
.run(CLASS)
.assertSuccessWithOutput(EXPECTED);
}
}