summaryrefslogtreecommitdiffstats
path: root/tests/031-class-attributes/src/ClassAttrs.java
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2013-06-14 17:41:43 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2013-06-14 17:41:44 +0000
commit2f0ce6ab114b1036b06c4bd425cd01cb509260bd (patch)
tree41d1ba35087755ab49bf21551a899aa60216f173 /tests/031-class-attributes/src/ClassAttrs.java
parent6529809bd4448a76622a08cf63829cab73d91b9a (diff)
parentc7f2d5edee6fb52a1e72699eec9899f57f38fca2 (diff)
downloadandroid_dalvik-2f0ce6ab114b1036b06c4bd425cd01cb509260bd.tar.gz
android_dalvik-2f0ce6ab114b1036b06c4bd425cd01cb509260bd.tar.bz2
android_dalvik-2f0ce6ab114b1036b06c4bd425cd01cb509260bd.zip
Merge "Fix inner class access flags and array modifiers."
Diffstat (limited to 'tests/031-class-attributes/src/ClassAttrs.java')
-rw-r--r--tests/031-class-attributes/src/ClassAttrs.java40
1 files changed, 40 insertions, 0 deletions
diff --git a/tests/031-class-attributes/src/ClassAttrs.java b/tests/031-class-attributes/src/ClassAttrs.java
index d93a9257f..e731c2c42 100644
--- a/tests/031-class-attributes/src/ClassAttrs.java
+++ b/tests/031-class-attributes/src/ClassAttrs.java
@@ -5,6 +5,7 @@ import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
+import java.lang.reflect.Modifier;
import java.lang.reflect.Type;
import java.lang.reflect.TypeVariable;
@@ -21,7 +22,46 @@ public class ClassAttrs {
cinner.showMe();
}
+ public class PublicInnerClass {
+ }
+
+ protected class ProtectedInnerClass {
+ }
+
+ private class PrivateInnerClass {
+ }
+
+ class PackagePrivateInnerClass {
+ }
+
+ private static void showModifiers(Class<?> c) {
+ System.out.println(Modifier.toString(c.getModifiers()) + " " + c.getName());
+ }
+
+ // https://code.google.com/p/android/issues/detail?id=56267
+ private static void test56267() {
+ // Primitive classes.
+ showModifiers(int.class);
+ showModifiers(int[].class);
+
+ // Regular classes.
+ showModifiers(Object.class);
+ showModifiers(Object[].class);
+
+ // Inner classes.
+ showModifiers(PublicInnerClass.class);
+ showModifiers(PublicInnerClass[].class);
+ showModifiers(ProtectedInnerClass.class);
+ showModifiers(ProtectedInnerClass[].class);
+ showModifiers(PrivateInnerClass.class);
+ showModifiers(PrivateInnerClass[].class);
+ showModifiers(PackagePrivateInnerClass.class);
+ showModifiers(PackagePrivateInnerClass[].class);
+ }
+
public static void main() {
+ test56267();
+
printClassAttrs(ClassAttrs.class);
printClassAttrs(OtherClass.class);
printClassAttrs(OtherPackageClass.class);