diff options
author | Andy Clement <andrew.clement@gmail.com> | 2012-09-06 09:38:34 -0700 |
---|---|---|
committer | Andy Clement <andrew.clement@gmail.com> | 2012-09-06 09:38:34 -0700 |
commit | 591a7e657dffbf63e11c4448e0555056bc295764 (patch) | |
tree | 8bdd993c0dada88de2926e31f02aa02444da8c4b /weaver/src | |
parent | c2ff74fd569ea2ef0c4abdc06e3f36a77b1ddd2c (diff) | |
parent | a847c704cd50e382dcd47cef44e8ebc1efc94ae2 (diff) | |
download | aspectj-591a7e657dffbf63e11c4448e0555056bc295764.tar.gz aspectj-591a7e657dffbf63e11c4448e0555056bc295764.zip |
Merge branch 'master' of ssh://git.eclipse.org/gitroot/aspectj/org.aspectj
Diffstat (limited to 'weaver/src')
-rw-r--r-- | weaver/src/org/aspectj/weaver/bcel/BcelTypeMunger.java | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/weaver/src/org/aspectj/weaver/bcel/BcelTypeMunger.java b/weaver/src/org/aspectj/weaver/bcel/BcelTypeMunger.java index d65e03787..adc1e8a84 100644 --- a/weaver/src/org/aspectj/weaver/bcel/BcelTypeMunger.java +++ b/weaver/src/org/aspectj/weaver/bcel/BcelTypeMunger.java @@ -1931,6 +1931,17 @@ public class BcelTypeMunger extends ConcreteTypeMunger { fg.addAnnotation(ag); } } + + if (weaver.getWorld().isInJava5Mode()) { + String basicSignature = field.getSignature(); + String genericSignature = field.getReturnType().resolve(weaver.getWorld()).getSignatureForAttribute(); + // String genericSignature = + // ((ResolvedMemberImpl)field).getSignatureForAttribute(); + if (!basicSignature.equals(genericSignature)) { + // Add a signature attribute to it + fg.addAttribute(createSignatureAttribute(gen.getConstantPool(), genericSignature)); + } + } gen.addField(fg, getSourceLocation()); } // this uses a shadow munger to add init method to constructors |