kind == Shadow.MethodExecution ||
kind == Shadow.PreInitialization ||
kind == Shadow.Initialization ||
kind == Shadow.StaticInitialization) {
// if we're extracting a whole block we can do this...
source.updateTarget(oldIh, freshIh);
} else {
// XXX destroying local variable info
// but only for a call or get join point, so no big deal
source.updateTarget(oldIh, null);
}