Program: 177177
Project: 177177
Buggy source:
@Override public ValidationResult validateComplexType(ComplexTypeDefinition complexType){
  ValidationResult result=super.validateComplexType(complexType);
  if (!isAMFTransient(complexType)) {
    if (!hasDefaultConstructor(complexType)) {
      result.addError(complexType,"String_Node_Str");
    }
    for (    Attribute attribute : complexType.getAttributes()) {
      if (!isAMFTransient(attribute)) {
        if (attribute.getDelegate() instanceof FieldDeclaration) {
          result.addError(attribute,"String_Node_Str");
        }
        if (!isSupported(attribute.getAccessorType())) {
          result.addError(attribute,"String_Node_Str" + attribute.getAccessorType() + "String_Node_Str");
        }
      }
    }
    for (    Element element : complexType.getElements()) {
      if (!isAMFTransient(element)) {
        if (element.getDelegate() instanceof FieldDeclaration) {
          result.addError(element,"String_Node_Str");
        }
        if (!isSupported(element.getAccessorType())) {
          result.addError(element,"String_Node_Str" + element.getAccessorType() + "String_Node_Str");
        }
      }
    }
    Value value=complexType.getValue();
    if (value != null) {
      if (!isAMFTransient(value)) {
        if (value.getDelegate() instanceof FieldDeclaration) {
          result.addError(value,"String_Node_Str");
        }
        if (!isSupported(value.getAccessorType())) {
          result.addError(value,"String_Node_Str" + value.getAccessorType() + "String_Node_Str");
        }
      }
    }
  }
  return result;
}

Fixed version (ground truth):
@Override public ValidationResult validateComplexType(ComplexTypeDefinition complexType){
  ValidationResult result=super.validateComplexType(complexType);
  if (!isAMFTransient(complexType)) {
    if (!hasDefaultConstructor(complexType)) {
      result.addError(complexType,"String_Node_Str");
    }
    if ("String_Node_Str".equals(complexType.getSimpleName())) {
      result.addError(complexType,"String_Node_Str");
    }
    for (    Attribute attribute : complexType.getAttributes()) {
      if (!isAMFTransient(attribute)) {
        if (attribute.getDelegate() instanceof FieldDeclaration) {
          result.addError(attribute,"String_Node_Str");
        }
        if (!isSupported(attribute.getAccessorType())) {
          result.addError(attribute,"String_Node_Str" + attribute.getAccessorType() + "String_Node_Str");
        }
      }
    }
    for (    Element element : complexType.getElements()) {
      if (!isAMFTransient(element)) {
        if (element.getDelegate() instanceof FieldDeclaration) {
          result.addError(element,"String_Node_Str");
        }
        if (!isSupported(element.getAccessorType())) {
          result.addError(element,"String_Node_Str" + element.getAccessorType() + "String_Node_Str");
        }
      }
    }
    Value value=complexType.getValue();
    if (value != null) {
      if (!isAMFTransient(value)) {
        if (value.getDelegate() instanceof FieldDeclaration) {
          result.addError(value,"String_Node_Str");
        }
        if (!isSupported(value.getAccessorType())) {
          result.addError(value,"String_Node_Str" + value.getAccessorType() + "String_Node_Str");
        }
      }
    }
  }
  return result;
}