summaryrefslogtreecommitdiffstats
path: root/weaver
diff options
context:
space:
mode:
authoraclement <aclement>2005-10-18 15:40:35 +0000
committeraclement <aclement>2005-10-18 15:40:35 +0000
commitae612d9752200a3784de33ea6b79815e77aabaed (patch)
treec6aa9d8bee4321e19589608821515536fd02915c /weaver
parentec9a49e930404239f5e681c133454f429fcc1ca6 (diff)
downloadaspectj-ae612d9752200a3784de33ea6b79815e77aabaed.tar.gz
aspectj-ae612d9752200a3784de33ea6b79815e77aabaed.zip
tests and fix for pr112027
Diffstat (limited to 'weaver')
-rw-r--r--weaver/src/org/aspectj/weaver/patterns/BindingTypePattern.java2
-rw-r--r--weaver/src/org/aspectj/weaver/patterns/ExactTypePattern.java4
2 files changed, 5 insertions, 1 deletions
diff --git a/weaver/src/org/aspectj/weaver/patterns/BindingTypePattern.java b/weaver/src/org/aspectj/weaver/patterns/BindingTypePattern.java
index 7afd93fbe..e5740b86a 100644
--- a/weaver/src/org/aspectj/weaver/patterns/BindingTypePattern.java
+++ b/weaver/src/org/aspectj/weaver/patterns/BindingTypePattern.java
@@ -48,7 +48,7 @@ public class BindingTypePattern extends ExactTypePattern implements BindingPatte
}
public int hashCode() {
int result = 17;
- result = 37*result + type.hashCode();
+ result = 37*result + super.hashCode();
result = 37*result + formalIndex;
return result;
}
diff --git a/weaver/src/org/aspectj/weaver/patterns/ExactTypePattern.java b/weaver/src/org/aspectj/weaver/patterns/ExactTypePattern.java
index 5f6c90267..9f99baf17 100644
--- a/weaver/src/org/aspectj/weaver/patterns/ExactTypePattern.java
+++ b/weaver/src/org/aspectj/weaver/patterns/ExactTypePattern.java
@@ -148,6 +148,7 @@ public class ExactTypePattern extends TypePattern {
public boolean equals(Object other) {
if (!(other instanceof ExactTypePattern)) return false;
+ if (other instanceof BindingTypePattern) return false;
ExactTypePattern o = (ExactTypePattern)other;
if (includeSubtypes != o.includeSubtypes) return false;
if (isVarArgs != o.isVarArgs) return false;
@@ -158,6 +159,9 @@ public class ExactTypePattern extends TypePattern {
public int hashCode() {
int result = 17;
result = 37*result + type.hashCode();
+ result = 37*result + new Boolean(includeSubtypes).hashCode();
+ result = 37*result + new Boolean(isVarArgs).hashCode();
+ result = 37*result + typeParameters.hashCode();
result = 37*result + annotationPattern.hashCode();
return result;
}