if (superOrThisCall == null) return false;
enclosingShadow = BcelShadow.makeConstructorExecution(world, mg, superOrThisCall);
+ if (mg.getEffectiveSignature() != null) {
+ enclosingShadow.setMatchingSignature(mg.getEffectiveSignature().getEffectiveSignature());
+ }
// walk the body
boolean beforeSuperOrThisCall = true;
BcelWorld world,
LazyMethodGen constructor)
{
- return new BcelShadow(
+ BcelShadow ret = new BcelShadow(
world,
Initialization,
world.makeJoinPointSignature(constructor),
constructor,
null);
+ if (constructor.getEffectiveSignature() != null) {
+ ret.setMatchingSignature(constructor.getEffectiveSignature().getEffectiveSignature());
+ }
+ return ret;
}
public static BcelShadow makeUnfinishedPreinitialization(
constructor,
null);
ret.fallsThrough = true;
+ if (constructor.getEffectiveSignature() != null) {
+ ret.setMatchingSignature(constructor.getEffectiveSignature().getEffectiveSignature());
+ }
return ret;
}