diff options
| -rw-r--r-- | runtime/verifier/method_verifier_test.cc | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/runtime/verifier/method_verifier_test.cc b/runtime/verifier/method_verifier_test.cc index 837ee2d396..52be2df06b 100644 --- a/runtime/verifier/method_verifier_test.cc +++ b/runtime/verifier/method_verifier_test.cc @@ -23,6 +23,7 @@ #include "common_runtime_test.h" #include "dex_file.h" #include "scoped_thread_state_change-inl.h" +#include "utils.h" #include "verifier_log_mode.h" namespace art { @@ -40,7 +41,14 @@ class MethodVerifierTest : public CommonRuntimeTest { std::string error_msg; MethodVerifier::FailureKind failure = MethodVerifier::VerifyClass( self, klass, nullptr, true, HardFailLogMode::kLogWarning, &error_msg); - ASSERT_TRUE(failure == MethodVerifier::kNoFailure) << error_msg; + + if (StartsWith(descriptor, "Ljava/lang/invoke")) { + ASSERT_TRUE(failure == MethodVerifier::kSoftFailure || + failure == MethodVerifier::kNoFailure) << error_msg; + + } else { + ASSERT_TRUE(failure == MethodVerifier::kNoFailure) << error_msg; + } } void VerifyDexFile(const DexFile& dex) |