summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Gavrilovic <gavra@google.com>2017-11-17 07:35:51 +0000
committerandroid-build-merger <android-build-merger@google.com>2017-11-17 07:35:51 +0000
commitaaaa1fae13a98db2b751ba7717ae5ca46d1e2688 (patch)
tree2c2e93f2498797eceab97e4798cf6c185c10aa9b
parentdd54395d5814bd056dd8a317005d0ce5c4077d05 (diff)
parent5ab07b3489dfc06dab4b32549bb7cf32d2cfe98c (diff)
downloaddalvik-aaaa1fae13a98db2b751ba7717ae5ca46d1e2688.tar.gz
Merge "Do not consider clinit as static interface method" am: 7af1e1070f am: 18c7e5880b
am: 5ab07b3489 Change-Id: I412e2518ceb20cf11d0be6f3a32ac4bbd107b1a6
-rw-r--r--dx/src/com/android/dx/cf/code/ConcreteMethod.java3
-rw-r--r--dx/tests/143-interface-methods/StaticDefinition.java3
2 files changed, 4 insertions, 2 deletions
diff --git a/dx/src/com/android/dx/cf/code/ConcreteMethod.java b/dx/src/com/android/dx/cf/code/ConcreteMethod.java
index 2210c89af..b544add77 100644
--- a/dx/src/com/android/dx/cf/code/ConcreteMethod.java
+++ b/dx/src/com/android/dx/cf/code/ConcreteMethod.java
@@ -138,7 +138,8 @@ public final class ConcreteMethod implements Method {
* @return true if the method is being defined on an interface.
*/
public final boolean isDefaultOrStaticInterfaceMethod() {
- return (classFile.getAccessFlags() & AccessFlags.ACC_INTERFACE) != 0;
+ return (classFile.getAccessFlags() & AccessFlags.ACC_INTERFACE) != 0
+ && !getNat().isClassInit();
}
/**
diff --git a/dx/tests/143-interface-methods/StaticDefinition.java b/dx/tests/143-interface-methods/StaticDefinition.java
index 1a81738a0..ab82cfc2f 100644
--- a/dx/tests/143-interface-methods/StaticDefinition.java
+++ b/dx/tests/143-interface-methods/StaticDefinition.java
@@ -15,7 +15,8 @@
*/
public interface StaticDefinition {
- public static void printIt(String s) {
+ long createsClinit = System.currentTimeMillis();
+ public static void printIt(String s) {
System.out.println(s);
}
}