Browse Source

Fix for Bug 83645: pertypewithin({interface}) illegal field modifier

- moving Wes' test to the regression set.
tags/Root_AspectJ5_Development
aclement 19 years ago
parent
commit
4adf568fdf

+ 0
- 6
tests/ajcTestsFailing.xml View File

@@ -152,10 +152,4 @@
files="Test_AroundVarBug.java,AroundVarBug.java"/>
<run class="Test_AroundVarBug"/>
</ajc-test>
<ajc-test dir="bugs150" pr="83645"
title="pertypewithin on interface">
<compile files="PR83645.java"/>
<run class="PR83645"/>
</ajc-test>
</suite>

+ 6
- 2
tests/bugs150/PR83645.java View File

@@ -7,6 +7,8 @@ interface IP {}
public class PR83645 implements IP {
public static void main(String[] args) {
try {
boolean hasAspect = PT.hasAspect(IP.class);
if (hasAspect) throw new Error("Shouldn't have an instance for an interface");
boolean yes = (PT.aspectOf(IP.class) instanceof PT);
throw new Error("expected NoAspectBoundException, got instance?: " + yes);
} catch (NoAspectBoundException e) {
@@ -14,11 +16,13 @@ public class PR83645 implements IP {
}
}
}

aspect PT pertypewithin(IP+) {
static int INDEX;
final int index = INDEX++;
public PT() {
}
public PT() {}
public String toString() {
return "me " + index;
}

+ 8
- 2
tests/src/org/aspectj/systemtest/ajc150/Ajc150TestsNoHarness.java View File

@@ -78,13 +78,19 @@ public class Ajc150TestsNoHarness extends TestUtils {
public void testPerTypeWithinMissesNamedInnerTypes() {
CompilationResult cR = ajc(baseDir,new String[]{"PR83563_1.java"});
assertTrue("Should be no errors:"+cR,!cR.hasErrorMessages());
assertMessages(cR,new EmptyMessageSpec());
RunResult rR = run("PR83563_1");
}
public void testPerTypeWithinMissesAnonymousInnerTypes() {
CompilationResult cR = ajc(baseDir,new String[]{"PR83563_2.java"});
assertTrue("Should be no errors:"+cR,!cR.hasErrorMessages());
assertMessages(cR,new EmptyMessageSpec());
RunResult rR = run("PR83563_2");
}

public void testPerTypeWithinIncorrectlyMatchingInterfaces() {
CompilationResult cR = ajc(baseDir,new String[]{"PR83645.java"});
assertMessages(cR,new EmptyMessageSpec());
RunResult rR = run("PR83645");
}
}

Loading…
Cancel
Save