Community
Participate
Working Groups
Build Identifier: I20100608-0911 Generic type used in a pointcut and bound to target() or this() must omit actual type name and thus causes 'raw type must be parametrized' compiler warning. @SuppressAJWarning or @SuppressWarning annotations does not turn it off Reproducible: Always Steps to Reproduce: Code snippets: pointcut IVOListUpdate(IVOList list): && target(list) && call(void updateList(*)); public interface IVOList<T extends IValueObject> extends List<T>, Externalizable, Serializable { void updateList(List<T> newList); } public interface IValueObject extends Comparable<IValueObject>, Serializable { }
Because AspectJ is based on an older JDT compiler, you needed to use @SuppressWarnings("unchecked") - since the old compiler did not distinguish between raw type refs and unchecked conversions, using 'unchecked' to cover both. However, yesterday I backported the recent JDT changes and so @SuppressWarnings("rawtypes") will now work with 1.6.12 dev builds.