summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Gavrilovic <gavra@google.com>2017-11-17 07:33:47 +0000
committerandroid-build-merger <android-build-merger@google.com>2017-11-17 07:33:47 +0000
commit5ab07b3489dfc06dab4b32549bb7cf32d2cfe98c (patch)
tree2c2e93f2498797eceab97e4798cf6c185c10aa9b
parent9f17d8df75078368aae95a69629643ebfddd01e2 (diff)
parent18c7e5880b145b1766356f06c6dec42694031483 (diff)
downloaddalvik-5ab07b3489dfc06dab4b32549bb7cf32d2cfe98c.tar.gz
Merge "Do not consider clinit as static interface method" am: 7af1e1070f
am: 18c7e5880b Change-Id: Ie2eff370cd949a095bcfa1685a01c93624278b92
-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);
}
}