Program: 9462
Project: 9462
Buggy source:
public EclipseTypeMunger build(ClassScope classScope){
  EclipseFactory world=EclipseFactory.fromScopeLookupEnvironment(classScope);
  binding=classScope.referenceContext.binding.resolveTypesFor(binding);
  resolveOnType(classScope);
  if (ignoreFurtherInvestigation)   return null;
  if (onTypeBinding.isInterface()) {
    classScope.problemReporter().signalError(sourceStart,sourceEnd,"String_Node_Str");
    ignoreFurtherInvestigation=true;
    return null;
  }
  if (onTypeBinding.isNestedType()) {
    classScope.problemReporter().signalError(sourceStart,sourceEnd,"String_Node_Str");
    ignoreFurtherInvestigation=true;
    return null;
  }
  ResolvedTypeX declaringTypeX=world.fromEclipse(onTypeBinding);
  ResolvedTypeX aspectType=world.fromEclipse(classScope.referenceContext.binding);
  ResolvedMember bindingAsMember=EclipseFactory.makeResolvedMember(binding);
  ResolvedMember signature=new ResolvedMember(Member.CONSTRUCTOR,declaringTypeX,declaredModifiers,ResolvedTypeX.VOID,"String_Node_Str",bindingAsMember.getParameterTypes(),world.fromEclipse(binding.thrownExceptions));
  ResolvedMember syntheticInterMember=AjcMemberMaker.interConstructor(declaringTypeX,signature,aspectType);
  NewConstructorTypeMunger myMunger=new NewConstructorTypeMunger(signature,syntheticInterMember,null,null);
  setMunger(myMunger);
  myMunger.check(world.getWorld());
  this.selector=binding.selector=NameMangler.postIntroducedConstructor(EclipseFactory.fromBinding(binding.declaringClass),declaringTypeX).toCharArray();
  return new EclipseTypeMunger(world,myMunger,aspectType,this);
}

Fixed version (ground truth):
public EclipseTypeMunger build(ClassScope classScope){
  EclipseFactory world=EclipseFactory.fromScopeLookupEnvironment(classScope);
  resolveOnType(classScope);
  if (ignoreFurtherInvestigation)   return null;
  binding=classScope.referenceContext.binding.resolveTypesFor(binding);
  if (onTypeBinding.isInterface()) {
    classScope.problemReporter().signalError(sourceStart,sourceEnd,"String_Node_Str");
    ignoreFurtherInvestigation=true;
    return null;
  }
  if (onTypeBinding.isNestedType()) {
    classScope.problemReporter().signalError(sourceStart,sourceEnd,"String_Node_Str");
    ignoreFurtherInvestigation=true;
    return null;
  }
  ResolvedTypeX declaringTypeX=world.fromEclipse(onTypeBinding);
  ResolvedTypeX aspectType=world.fromEclipse(classScope.referenceContext.binding);
  ResolvedMember bindingAsMember=EclipseFactory.makeResolvedMember(binding);
  ResolvedMember signature=new ResolvedMember(Member.CONSTRUCTOR,declaringTypeX,declaredModifiers,ResolvedTypeX.VOID,"String_Node_Str",bindingAsMember.getParameterTypes(),world.fromEclipse(binding.thrownExceptions));
  ResolvedMember syntheticInterMember=AjcMemberMaker.interConstructor(declaringTypeX,signature,aspectType);
  NewConstructorTypeMunger myMunger=new NewConstructorTypeMunger(signature,syntheticInterMember,null,null);
  setMunger(myMunger);
  myMunger.check(world.getWorld());
  this.selector=binding.selector=NameMangler.postIntroducedConstructor(EclipseFactory.fromBinding(binding.declaringClass),declaringTypeX).toCharArray();
  return new EclipseTypeMunger(world,myMunger,aspectType,this);
}