From d3156f737f3bb24e3ad695205da5977bef519275 Mon Sep 17 00:00:00 2001 From: jhugunin Date: Tue, 24 Dec 2002 00:34:05 +0000 Subject: added coverage for exceptions thrown from intro methods these tests were inspired by failures compiling observer example --- tests/design/intro/ExceptionsCF.java | 24 ++++++++++++++++++++++++ tests/design/intro/ExceptionsCP.java | 25 +++++++++++++++++++++++++ 2 files changed, 49 insertions(+) create mode 100644 tests/design/intro/ExceptionsCF.java create mode 100644 tests/design/intro/ExceptionsCP.java (limited to 'tests/design') diff --git a/tests/design/intro/ExceptionsCF.java b/tests/design/intro/ExceptionsCF.java new file mode 100644 index 000000000..4bf8dc661 --- /dev/null +++ b/tests/design/intro/ExceptionsCF.java @@ -0,0 +1,24 @@ +import org.aspectj.testing.Tester; + +import java.io.IOException; + +public class ExceptionsCF { + public static void main(String[] args) { + C c = new C(); + c.foo(); // ERR: can't throw IOException here + } +} +class Root { + public void bar() {} +} + +class C extends Root { + +} + + +aspect A { + public void C.foo() throws IOException { } + + public void C.bar() throws IOException {} // ERR: can't throw more than super +} diff --git a/tests/design/intro/ExceptionsCP.java b/tests/design/intro/ExceptionsCP.java new file mode 100644 index 000000000..92d0b9b27 --- /dev/null +++ b/tests/design/intro/ExceptionsCP.java @@ -0,0 +1,25 @@ +import org.aspectj.testing.Tester; + +import java.io.IOException; + +public class ExceptionsCP { + public static void main(String[] args) { + C c = new C(); + try { + c.foo(); + } catch (IOException io) {} + c.bar(); + } +} +class Root { + public void bar() {} +} + +class C extends Root { + +} + + +aspect A { + public void C.foo() throws IOException { } +} -- cgit v1.2.3