aboutsummaryrefslogtreecommitdiffstats
path: root/weaver
diff options
context:
space:
mode:
authoraclement <aclement>2005-12-15 14:15:14 +0000
committeraclement <aclement>2005-12-15 14:15:14 +0000
commit305786094b456b3d17b0d82abe4ab6fbd4f870bc (patch)
tree8e75e1ab3a7c069a26b2c6ff0dcff5c8985802ca /weaver
parent332eef9ebd79970f5ac2fe671c4e0efdce85974a (diff)
downloadaspectj-305786094b456b3d17b0d82abe4ab6fbd4f870bc.tar.gz
aspectj-305786094b456b3d17b0d82abe4ab6fbd4f870bc.zip
fix for clone case in 120916: Jrockit test failures with RC1
Diffstat (limited to 'weaver')
-rw-r--r--weaver/src/org/aspectj/weaver/ResolvedType.java9
1 files changed, 7 insertions, 2 deletions
diff --git a/weaver/src/org/aspectj/weaver/ResolvedType.java b/weaver/src/org/aspectj/weaver/ResolvedType.java
index ee8b7d0ac..ce072037f 100644
--- a/weaver/src/org/aspectj/weaver/ResolvedType.java
+++ b/weaver/src/org/aspectj/weaver/ResolvedType.java
@@ -1620,8 +1620,13 @@ public abstract class ResolvedType extends UnresolvedType implements AnnotatedEl
// not marked abstract. The code below this next line seems to make assumptions
// about what will have gotten through the compiler based on the normal
// java rules. clone goes against these...
- if (m2.isProtected() && m2.isNative() && m2.getName().equals("clone")) return +1;
-
+ if (m2.isProtected() && m2.getName().charAt(0)=='c') {
+ UnresolvedType declaring = m2.getDeclaringType();
+ if (declaring!=null) {
+ if (declaring.getName().equals("java.lang.Object") && m2.getName().equals("clone")) return +1;
+ }
+ }
+
if (Modifier.isAbstract(m1.getModifiers())) return -1;
if (Modifier.isAbstract(m2.getModifiers())) return +1;