--- /dev/null
+
+aspect A {
+ pointcut broken1() : execution(* *(Object[]+));
+// pointcut broken2(): execution(* *(*)) && args(Object[]+);
+
+ before(): broken1() { System.out.println("a"); }
+// before(): broken2() { System.out.println("b"); }
+}
+
+public class PR148508 {
+
+ public static void main(String []argv) {
+ PR148508 instance = new PR148508();
+// instance.m1(new Object[]{});
+ instance.m2(new Integer[]{});
+// instance.m3(new String[]{});
+ }
+
+// public void m1(Object[] os) { }
+ public void m2(Integer[] is) { }
+// public void m3(String[] ss) { }
+
+}
--- /dev/null
+class Test<O> {
+ O field;
+}
+
+class P {
+ public static void main(String[] argv) {
+ new Test<Integer>().field = 42;
+ }
+}
--- /dev/null
+aspect Asp {
+ before(): execution(new(Integer,..)) {}
+}
+
+class Outer {
+ public class Inner {
+ Inner(Integer arg) {}
+ }
+}
--- /dev/null
+aspect Asp {
+ before(): execution(new(String)) {}
+}
+
+class Outer {
+ public class Inner {
+ Inner(String arg) {}
+ }
+}
runTest("ltw perclause");
}
+// public void testParserProblemSubArrayPatterns_pr148508() {
+// runTest("parser problem for array subtypes");
+// }
+
public void testNullDelegateForArray_pr247683() {
runTest("null delegate for array");
}
}
// public void testParamAnnosPipelining_pr241847() { runTest("param annos pipelining");}
- // public void testParamAnnoInner_pr241861() {
- // runTest("param annotation inner class");
- // }
- //
- // public void testParamAnnoInner_pr241861_2() {
- // runTest("param annotation inner class - 2");
- // }
- //
- // public void testParamAnnoInner_pr241861_3() {
- // runTest("param annotation inner class - 3");
- // }
+ //public void testParamAnnoInner_pr241861() {
+ // runTest("param annotation inner class");
+ //}
+//
+ //public void testParamAnnoInner_pr241861_2() {
+ // runTest("param annotation inner class - 2");
+ //}
+//
+ //public void testParamAnnoInner_pr241861_3() {
+ // runTest("param annotation inner class - 3");
+ //}
public void testAnnotationDecp_pr239441() {
runTest("annotation decp");
<!-- AspectJ v1.6.2 Tests -->
<suite>
+ <ajc-test dir="bugs162" title="parser problem for array subtypes">
+ <compile files="PR148508.java"/>
+ <run class="PR148508">
+ </run>
+ </ajc-test>
<ajc-test dir="bugs162/pr247683" title="null delegate for array">
<compile options="-1.5" files="A.java"/>
</ajc-test>
<ajc-test dir="bugs162/pr241861" title="param annotation inner class">
- <compile files="Outer.java Ann.java Asp.java" options="-1.5">
- </compile>
+ <compile files="Outer.java Ann.java Asp.java" options="-1.5 -showWeaveInfo">
+ <message kind="weave" text="Join point 'constructor-execution(void Outer$Inner.<init>(Outer, java.lang.String))' in Type 'Outer$Inner' (Outer.java:5) advised by before advice from 'Asp' (Asp.java:2)"/>
+ </compile>
</ajc-test>
<ajc-test dir="bugs162/pr241861" title="param annotation inner class - 2">
<compile files="X.java" options="-1.5 -showWeaveInfo">
- <message kind="weave" text="fubar"/>
+ <message kind="weave" text="Join point 'constructor-execution(void Outer$Inner.<init>(Outer, java.lang.Integer))' in Type 'Outer$Inner' (X.java:7) advised by before advice from 'Asp' (X.java:2)"/>
</compile>
</ajc-test>
<ajc-test dir="bugs162/pr241861" title="param annotation inner class - 3">
<compile files="Y.java" options="-1.5 -showWeaveInfo">
- <message kind="weave" text="fubar"/>
+ <message kind="weave" text="Join point 'constructor-execution(void Outer$Inner.<init>(Outer, java.lang.String))' in Type 'Outer$Inner' (Y.java:7) advised by before advice from 'Asp' (Y.java:2)"/>
</compile>
</ajc-test>