aboutsummaryrefslogtreecommitdiffstats
path: root/tests/bugs153/pr159143
diff options
context:
space:
mode:
authoraclement <aclement>2006-10-04 07:27:44 +0000
committeraclement <aclement>2006-10-04 07:27:44 +0000
commit513564a9e5b5ae5d03c4f0547ee7823e903d3c52 (patch)
treeb98a8b14ac1b218475f125406557d4724d10d13e /tests/bugs153/pr159143
parent765c4be9a0945dba7c2c87104fec751ae7f26f2f (diff)
downloadaspectj-513564a9e5b5ae5d03c4f0547ee7823e903d3c52.tar.gz
aspectj-513564a9e5b5ae5d03c4f0547ee7823e903d3c52.zip
test from Wes (bug 159143)
Diffstat (limited to 'tests/bugs153/pr159143')
-rw-r--r--tests/bugs153/pr159143/DeclareMethodAnnotation.java65
1 files changed, 65 insertions, 0 deletions
diff --git a/tests/bugs153/pr159143/DeclareMethodAnnotation.java b/tests/bugs153/pr159143/DeclareMethodAnnotation.java
new file mode 100644
index 000000000..830ef72c7
--- /dev/null
+++ b/tests/bugs153/pr159143/DeclareMethodAnnotation.java
@@ -0,0 +1,65 @@
+// Preserve lineation of affected types or redo expected messages
+
+
+
+@interface MtAn {}
+
+
+
+
+public aspect DeclareMethodAnnotation {
+
+
+
+ // ------------------ affected types
+ static class Untyped {
+ void untypedName() {} // declare warning 16
+ void untypedPrefix_blah() {} // declare warning 17
+ void blah_untypedSuffix() {} // declare warning 18
+ }
+
+ static class Star {
+ void starName() {} // declare warning 22
+ void starPrefix_blah() {} // declare warning 23
+ void blah_starSuffix() {} // declare warning 24
+ }
+ static class Type{
+ void typeName() {} // declare warning 27
+ void typePrefix_blah() {} // declare warning 28
+ void blah_typeSuffix() {} // declare warning 29
+ }
+
+ static class TypePlus {
+ void typeplusName() {} // declare warning 33
+ void typeplusPrefix_blah() {} // declare warning 34
+ void blah_typeplusSuffix() {} // declare warning 35
+ }
+
+ static class TypePlusSubtype extends TypePlus {
+ void typeplusName() {} // declare warning 39
+ void typeplusPrefix_blah() {} // declare warning 40
+ void blah_typeplusSuffix() {} // declare warning 41
+ }
+
+ // ------------------ tests
+ declare @method: * untypedName() : @MtAn;
+ declare @method: * untypedPrefix*() : @MtAn;
+ declare @method: * *untypedSuffix() : @MtAn;
+
+ declare @method: * *.starName() : @MtAn;
+ declare @method: * *.starPrefix*() : @MtAn;
+ declare @method: * *.*starSuffix() : @MtAn;
+
+ declare @method: * Type.typeName() : @MtAn;
+ declare @method: * Type.typePrefix*() : @MtAn;
+ declare @method: * Type.*typeSuffix() : @MtAn;
+
+ declare @method: * TypePlus+.typeplusName() : @MtAn;
+ declare @method: * TypePlus+.typeplusPrefix*() : @MtAn;
+ declare @method: * TypePlus+.*typeplusSuffix() : @MtAn;
+
+ // ------------------ check using warnings, expected in .xml
+ declare warning : execution(@MtAn * *()): "all";
+
+}
+