From 0f1cb17d23b664b96b6966e5d0f280df5925f56f Mon Sep 17 00:00:00 2001 From: Nicolas Geoffray Date: Thu, 5 Jan 2017 15:23:19 +0000 Subject: Actually record arrays in classpath. With https://android-review.googlesource.com/#/c/316151/, I was under the wrong impression arrays all have the same access flags. They actually have the visibility of the inner most component type. Therefore, we still need to record visibility of array types whose innermost component type is in the classpath. Test: verifier_deps_test Change-Id: If7b1004efb679e320330258f42ced83b8eedae87 --- compiler/verifier_deps_test.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'compiler') diff --git a/compiler/verifier_deps_test.cc b/compiler/verifier_deps_test.cc index 85ae61f1bd..e716cdbed8 100644 --- a/compiler/verifier_deps_test.cc +++ b/compiler/verifier_deps_test.cc @@ -1101,6 +1101,16 @@ TEST_F(VerifierDepsTest, InvokeSuper_ThisNotAssignable) { "virtual", "Ljava/lang/Integer;", "intValue", "()I", true, "public", "Ljava/lang/Integer;")); } +TEST_F(VerifierDepsTest, ArgumentType_ResolvedReferenceArray) { + ASSERT_TRUE(VerifyMethod("ArgumentType_ResolvedReferenceArray")); + ASSERT_TRUE(HasClass("[Ljava/lang/Thread;", true, "public final abstract")); +} + +TEST_F(VerifierDepsTest, NewArray_Resolved) { + ASSERT_TRUE(VerifyMethod("NewArray_Resolved")); + ASSERT_TRUE(HasClass("[Ljava/lang/IllegalStateException;", true, "public final abstract")); +} + TEST_F(VerifierDepsTest, EncodeDecode) { VerifyDexFile(); -- cgit v1.2.3-59-g8ed1b