123456789101112131415161718192021222324252627 |
- package bugs;
-
- import bugsOtherPackage.INode;
- import bugsOtherPackage.NodeImpl;
-
- public class ParameterizedDP {
-
- public static void main(String[] args) {
- // 1) compile-time error here without
- // {unneeded} subaspect declare-parent
- // Tag as INode<Tag, Tag> from PC extends NodeImpl<Tag, Tag>
- ((TaggedTexts.Tag) null).getParent();
- }
-
- }
- class TaggedTexts {
-
- public static class Text { }
-
- public static class Tag { }
- static aspect PC extends NodeImpl<Tag, Tag> {
- // unneeded declare-parents duplicates one in NodeImpl
- // when here, get spurious error message
- // when commented out, d-p fails and get compiler error at 1) above
- // declare parents : Tag implements INode<Tag,Tag>;
- }
- }
|