Program: 81603
Project: 81603
Buggy source:
public String getStateCode(){
  String code="String_Node_Str";
  if (module_string != null) {
    code+="String_Node_Str" + module_string + "String_Node_Str";
    SymbolTable.setCurrentModule(module_string + "String_Node_Str");
  }
  code+="String_Node_Str";
  code+="String_Node_Str";
  if (System.getProperty("String_Node_Str") != null) {
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    if (module_string == null || !module_string.equals("String_Node_Str")) {
      code+="String_Node_Str";
      code+="String_Node_Str";
      code+="String_Node_Str";
      code+="String_Node_Str";
    }
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
  }
 else   if (System.getProperty("String_Node_Str") != null) {
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
  }
  code+="String_Node_Str";
  code+="String_Node_Str";
  if (java_statement != null)   code+=java_statement.toJavaCode() + "String_Node_Str";
  code+=getImportDeclarationCode() + "String_Node_Str";
  String actor_name=getName().name;
  try {
    SymbolTable.addVariableType("String_Node_Str",actor_name,false,false);
  }
 catch (  SalsaNotFoundException snfe) {
    CompilerErrors.printErrorMessage("String_Node_Str",behavior_declaration);
    throw new RuntimeException(snfe);
  }
  if (behavior_declaration != null) {
    if (behavior_declaration.is_abstract) {
      code+="String_Node_Str" + actor_name;
    }
 else {
      code+="String_Node_Str" + actor_name;
    }
  }
 else {
    code+="String_Node_Str" + actor_name;
  }
  if (getExtendsName() == null) {
    if (System.getProperty("String_Node_Str") != null || System.getProperty("String_Node_Str") != null) {
      actor_name+="String_Node_Str";
    }
  }
 else {
    String extendsName=getExtendsName().name;
    if (System.getProperty("String_Node_Str") != null || System.getProperty("String_Node_Str") != null) {
      actor_name+="String_Node_Str";
      extendsName+="String_Node_Str";
    }
    code+="String_Node_Str" + extendsName;
  }
  String implementsNames=null;
  if (behavior_declaration != null)   implementsNames=behavior_declaration.getImplementsNames();
 else   if (interface_declaration.extends_names.size() > 0)   implementsNames=interface_declaration.getImplementsNames();
  if (implementsNames != null)   code+="String_Node_Str" + implementsNames;
  code+="String_Node_Str";
  CIndent.increaseIndent();
  Vector<CMessageHandler> containedMessageHandlers=new Vector<CMessageHandler>();
  int i=0;
  if (getConstructors() != null) {
    for (    CConstructor constructor : getConstructors()) {
      constructor.addContainedMessageHandlers(containedMessageHandlers);
    }
  }
  i=0;
  for (  CMessageHandler message_handler : getMessageHandlers()) {
    message_handler.addContainedMessageHandlers(containedMessageHandlers);
  }
  TypeSymbol self_type=null;
  try {
    self_type=SymbolTable.getVariableType("String_Node_Str");
    if (!(self_type instanceof ActorType)) {
      System.err.println("String_Node_Str" + self_type.getLongSignature());
    }
  }
 catch (  SalsaNotFoundException snfe) {
    CompilerErrors.printErrorMessage("String_Node_Str",behavior_declaration);
    throw new RuntimeException(snfe);
  }
  ActorType at=(ActorType)self_type;
  int number_original_messages=getMessageHandlers().size();
  for (i=0; i < containedMessageHandlers.size(); i++) {
    MessageSymbol ms=new MessageSymbol(i + number_original_messages,self_type,containedMessageHandlers.get(i));
    at.message_handlers.add(ms);
  }
  code+=getFieldCode() + "String_Node_Str";
  code+=getEnumerationCode() + "String_Node_Str";
  if (behavior_declaration != null) {
    code+=getInvokeMessageCode() + "String_Node_Str";
    if (!behavior_declaration.is_abstract) {
      code+=getInvokeConstructorCode() + "String_Node_Str";
    }
  }
  if (behavior_declaration != null && !behavior_declaration.is_abstract) {
    code+=getConstructorCode() + "String_Node_Str";
  }
  code+=getMessageCode() + "String_Node_Str";
  if (actor_name.contains("String_Node_Str"))   actor_name=actor_name.substring(0,actor_name.indexOf('<'));
  if (System.getProperty("String_Node_Str") != null) {
    code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str";
    code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str";
  }
  if (behavior_declaration != null && !behavior_declaration.is_abstract) {
    if (System.getProperty("String_Node_Str") != null) {
      code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str";
    }
    if (System.getProperty("String_Node_Str") != null || System.getProperty("String_Node_Str") != null) {
      if (behavior_declaration != null) {
        int act_constructor=behavior_declaration.getActConstructor();
        if (act_constructor >= 0) {
          code+=CIndent.getIndent() + "String_Node_Str";
          if (System.getProperty("String_Node_Str") != null) {
            code+=CIndent.getIndent() + "String_Node_Str" + act_constructor+ "String_Node_Str";
          }
 else {
            code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str"+ act_constructor+ "String_Node_Str";
          }
          code+=CIndent.getIndent() + "String_Node_Str";
        }
      }
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str"+ actor_name+ "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str"+ actor_name+ "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      if (System.getProperty("String_Node_Str") != null) {
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str"+ actor_name+ "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str"+ actor_name+ "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
      }
    }
  }
  CIndent.decreaseIndent();
  code+=CIndent.getIndent() + "String_Node_Str";
  return code;
}

Fixed version (ground truth):
public String getStateCode(){
  String code="String_Node_Str";
  if (module_string != null) {
    code+="String_Node_Str" + module_string + "String_Node_Str";
    SymbolTable.setCurrentModule(module_string + "String_Node_Str");
  }
  code+="String_Node_Str";
  code+="String_Node_Str";
  if (System.getProperty("String_Node_Str") != null) {
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    if (module_string == null || !module_string.equals("String_Node_Str")) {
      code+="String_Node_Str";
      code+="String_Node_Str";
      code+="String_Node_Str";
      code+="String_Node_Str";
      code+="String_Node_Str";
    }
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
  }
 else   if (System.getProperty("String_Node_Str") != null) {
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
    code+="String_Node_Str";
  }
  code+="String_Node_Str";
  code+="String_Node_Str";
  if (java_statement != null)   code+=java_statement.toJavaCode() + "String_Node_Str";
  code+=getImportDeclarationCode() + "String_Node_Str";
  String actor_name=getName().name;
  try {
    SymbolTable.addVariableType("String_Node_Str",actor_name,false,false);
  }
 catch (  SalsaNotFoundException snfe) {
    CompilerErrors.printErrorMessage("String_Node_Str",behavior_declaration);
    throw new RuntimeException(snfe);
  }
  if (behavior_declaration != null) {
    if (behavior_declaration.is_abstract) {
      code+="String_Node_Str" + actor_name;
    }
 else {
      code+="String_Node_Str" + actor_name;
    }
  }
 else {
    code+="String_Node_Str" + actor_name;
  }
  if (getExtendsName() == null) {
    if (System.getProperty("String_Node_Str") != null || System.getProperty("String_Node_Str") != null) {
      actor_name+="String_Node_Str";
    }
  }
 else {
    String extendsName=getExtendsName().name;
    if (System.getProperty("String_Node_Str") != null || System.getProperty("String_Node_Str") != null) {
      actor_name+="String_Node_Str";
      extendsName+="String_Node_Str";
    }
    code+="String_Node_Str" + extendsName;
  }
  String implementsNames=null;
  if (behavior_declaration != null)   implementsNames=behavior_declaration.getImplementsNames();
 else   if (interface_declaration.extends_names.size() > 0)   implementsNames=interface_declaration.getImplementsNames();
  if (implementsNames != null)   code+="String_Node_Str" + implementsNames;
  code+="String_Node_Str";
  CIndent.increaseIndent();
  Vector<CMessageHandler> containedMessageHandlers=new Vector<CMessageHandler>();
  int i=0;
  if (getConstructors() != null) {
    for (    CConstructor constructor : getConstructors()) {
      constructor.addContainedMessageHandlers(containedMessageHandlers);
    }
  }
  i=0;
  for (  CMessageHandler message_handler : getMessageHandlers()) {
    message_handler.addContainedMessageHandlers(containedMessageHandlers);
  }
  TypeSymbol self_type=null;
  try {
    self_type=SymbolTable.getVariableType("String_Node_Str");
    if (!(self_type instanceof ActorType)) {
      System.err.println("String_Node_Str" + self_type.getLongSignature());
    }
  }
 catch (  SalsaNotFoundException snfe) {
    CompilerErrors.printErrorMessage("String_Node_Str",behavior_declaration);
    throw new RuntimeException(snfe);
  }
  ActorType at=(ActorType)self_type;
  int number_original_messages=getMessageHandlers().size();
  for (i=0; i < containedMessageHandlers.size(); i++) {
    MessageSymbol ms=new MessageSymbol(i + number_original_messages,self_type,containedMessageHandlers.get(i));
    at.message_handlers.add(ms);
  }
  code+=getFieldCode() + "String_Node_Str";
  code+=getEnumerationCode() + "String_Node_Str";
  if (behavior_declaration != null) {
    code+=getInvokeMessageCode() + "String_Node_Str";
    if (!behavior_declaration.is_abstract) {
      code+=getInvokeConstructorCode() + "String_Node_Str";
    }
  }
  if (behavior_declaration != null && !behavior_declaration.is_abstract) {
    code+=getConstructorCode() + "String_Node_Str";
  }
  code+=getMessageCode() + "String_Node_Str";
  if (actor_name.contains("String_Node_Str"))   actor_name=actor_name.substring(0,actor_name.indexOf('<'));
  if (System.getProperty("String_Node_Str") != null) {
    code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str";
    code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str";
  }
  if (behavior_declaration != null && !behavior_declaration.is_abstract) {
    if (System.getProperty("String_Node_Str") != null) {
      code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str";
    }
    if (System.getProperty("String_Node_Str") != null || System.getProperty("String_Node_Str") != null) {
      if (behavior_declaration != null) {
        int act_constructor=behavior_declaration.getActConstructor();
        if (act_constructor >= 0) {
          code+=CIndent.getIndent() + "String_Node_Str";
          if (System.getProperty("String_Node_Str") != null) {
            code+=CIndent.getIndent() + "String_Node_Str" + act_constructor+ "String_Node_Str";
          }
 else {
            code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str"+ act_constructor+ "String_Node_Str";
          }
          code+=CIndent.getIndent() + "String_Node_Str";
        }
      }
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str"+ actor_name+ "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str"+ actor_name+ "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      code+=CIndent.getIndent() + "String_Node_Str";
      if (System.getProperty("String_Node_Str") != null) {
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str"+ actor_name+ "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str" + actor_name+ "String_Node_Str"+ actor_name+ "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
        code+=CIndent.getIndent() + "String_Node_Str";
      }
    }
  }
  CIndent.decreaseIndent();
  code+=CIndent.getIndent() + "String_Node_Str";
  return code;
}