Program: 76175
Project: 76175
Buggy source:
public String methodBody(){
  if (_construct) {
    StringBuffer sb=new StringBuffer();
    if (_superParams > 0) {
      Iterator argsItr=_superArgs.listIterator();
      sb.append(ident);
      sb.append(ident);
      sb.append("String_Node_Str");
      for (int i=0; i < _superParams; i++) {
        sb.append((String)argsItr.next());
        if (i < (_superParams - 1)) {
          sb.append("String_Node_Str");
        }
      }
      sb.append("String_Node_Str");
    }
    if (_defConstruct) {
      Iterator typeItr=_paramTypes.listIterator();
      Iterator nameItr=_paramNames.listIterator();
      Iterator varPlaceItr=_varPlacements.listIterator();
      int varCount=0;
      do {
        String typeStr=(String)typeItr.next();
        String nameStr=(String)nameItr.next();
        char placement=((Character)varPlaceItr.next()).charValue();
        if (varCount >= _superParams) {
          sb.append(ident);
          sb.append(ident);
switch (placement) {
case 'l':
            sb.append("String_Node_Str");
          sb.append(nameStr);
        sb.append("String_Node_Str");
      break;
case 'm':
case 'h':
    sb.append('_');
  sb.append(nameStr);
sb.append("String_Node_Str");
sb.append(nameStr);
sb.append(';');
break;
case 'p':
sb.append("String_Node_Str");
sb.append(nameStr);
sb.append("String_Node_Str");
sb.append(_wrapPrimitive(typeStr,nameStr));
sb.append("String_Node_Str");
break;
case 'n':
break;
default :
throw new RuntimeException("String_Node_Str");
}
if (typeItr.hasNext()) {
sb.append('\n');
}
}
varCount++;
}
 while (typeItr.hasNext());
}
return sb.toString();
}
if (_methodBody != null) {
return ident + ident + _methodBody;
}
if (_returnType.equals("String_Node_Str") || _returnType.equals("String_Node_Str")) {
return "String_Node_Str";
}
if (_returnType.equals("String_Node_Str")) {
return ident + ident + "String_Node_Str";
}
if (_returnType.equals("String_Node_Str") || _returnType.equals("String_Node_Str") || _returnType.equals("String_Node_Str")) {
return ident + ident + "String_Node_Str";
}
if (_returnType.equals("String_Node_Str")) {
return ident + ident + "String_Node_Str";
}
if (_returnType.equals("String_Node_Str")) {
return ident + ident + "String_Node_Str";
}
if (_returnType.equals("String_Node_Str")) {
return ident + ident + "String_Node_Str";
}
if (_returnType.equals("String_Node_Str")) {
return ident + ident + "String_Node_Str";
}
return ident + ident + "String_Node_Str";
}

Fixed version (ground truth):
public String methodBody(){
  if (_methodBody != null) {
    return ident + ident + _methodBody;
  }
  if (_construct) {
    StringBuffer sb=new StringBuffer();
    if (_superParams > 0) {
      Iterator argsItr=_superArgs.listIterator();
      sb.append(ident + ident);
      sb.append("String_Node_Str");
      for (int i=0; i < _superParams; i++) {
        sb.append((String)argsItr.next());
        if (i < (_superParams - 1)) {
          sb.append("String_Node_Str");
        }
      }
      sb.append("String_Node_Str");
    }
    if (_defConstruct) {
      Iterator typeItr=_paramTypes.listIterator();
      Iterator nameItr=_paramNames.listIterator();
      Iterator varPlaceItr=_varPlacements.listIterator();
      int varCount=0;
      do {
        String typeStr=(String)typeItr.next();
        String nameStr=(String)nameItr.next();
        char placement=((Character)varPlaceItr.next()).charValue();
        if (varCount >= _superParams) {
          sb.append(ident);
          sb.append(ident);
switch (placement) {
case 'l':
            sb.append("String_Node_Str" + nameStr + "String_Node_Str");
          break;
case 'm':
case 'h':
        sb.append("String_Node_Str" + nameStr + "String_Node_Str"+ nameStr+ "String_Node_Str");
      break;
case 'p':
    sb.append("String_Node_Str" + nameStr + "String_Node_Str"+ _wrapPrimitive(typeStr,nameStr)+ "String_Node_Str");
  break;
case 'n':
break;
default :
throw new RuntimeException("String_Node_Str");
}
if (typeItr.hasNext()) {
sb.append('\n');
}
}
varCount++;
}
 while (typeItr.hasNext());
}
return sb.toString();
}
if (_returnType.equals("String_Node_Str") || _returnType.equals("String_Node_Str")) {
return "String_Node_Str";
}
if (_returnType.equals("String_Node_Str")) {
return ident + ident + "String_Node_Str";
}
if (_returnType.equals("String_Node_Str") || _returnType.equals("String_Node_Str") || _returnType.equals("String_Node_Str")) {
return ident + ident + "String_Node_Str";
}
if (_returnType.equals("String_Node_Str")) {
return ident + ident + "String_Node_Str";
}
if (_returnType.equals("String_Node_Str")) {
return ident + ident + "String_Node_Str";
}
if (_returnType.equals("String_Node_Str")) {
return ident + ident + "String_Node_Str";
}
if (_returnType.equals("String_Node_Str")) {
return ident + ident + "String_Node_Str";
}
return ident + ident + "String_Node_Str";
}