Program: 163056
Project: 163056
Buggy source:
@SuppressWarnings("String_Node_Str") SerializationBuilder(Class<E> eClass,Role role){
  this.bufferIdentity=role;
  this.eClass=eClass;
  instancesAreMutable=instancesAreMutable(eClass);
  ObjectFactory<E> factory=null;
  if (role == Role.VALUE) {
    factory=concreteClass(eClass) && marshallerUseFactory(eClass) ? new NewInstanceObjectFactory<E>(eClass) : (ObjectFactory<E>)NullObjectFactory.of();
  }
  if (concreteClass(eClass) && Byteable.class.isAssignableFrom(eClass)) {
    agileMarshaller(ByteableMarshaller.of((Class)eClass),factory);
  }
 else   if (eClass == CharSequence.class || eClass == String.class) {
    reader((BytesReader<E>)CharSequenceReader.of(),factory);
    writer((BytesWriter<E>)CharSequenceWriter.instance());
  }
 else   if (eClass == Void.class) {
    agileMarshaller((AgileBytesMarshaller<E>)VoidMarshaller.INSTANCE,factory);
  }
 else   if (eClass == Long.class) {
    agileMarshaller((AgileBytesMarshaller<E>)LongMarshaller.INSTANCE,factory);
  }
 else   if (eClass == Double.class) {
    agileMarshaller((AgileBytesMarshaller<E>)DoubleMarshaller.INSTANCE,factory);
  }
 else   if (eClass == Integer.class) {
    agileMarshaller((AgileBytesMarshaller<E>)IntegerMarshaller.INSTANCE,factory);
  }
 else   if (eClass == byte[].class) {
    reader((BytesReader<E>)ByteArrayMarshaller.INSTANCE,factory);
    interop((BytesInterop<E>)ByteArrayMarshaller.INSTANCE);
  }
 else   if (concreteClass(eClass)) {
    BytesMarshaller<E> marshaller=chooseMarshaller(eClass,eClass);
    if (marshaller != null)     marshaller(marshaller,factory);
  }
  if (role == Role.VALUE && concreteClass(eClass) && marshallerUseFactory(eClass)) {
    factory(factory);
  }
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") SerializationBuilder(Class<E> eClass,Role role){
  this.bufferIdentity=role;
  this.eClass=eClass;
  instancesAreMutable=instancesAreMutable(eClass);
  ObjectFactory<E> factory=null;
  if (role == Role.VALUE) {
    factory=concreteClass(eClass) && marshallerUseFactory(eClass) ? new NewInstanceObjectFactory<E>(eClass) : (ObjectFactory<E>)NullObjectFactory.<E>of();
  }
  if (concreteClass(eClass) && Byteable.class.isAssignableFrom(eClass)) {
    agileMarshaller(ByteableMarshaller.of((Class)eClass),factory);
  }
 else   if (eClass == CharSequence.class || eClass == String.class) {
    reader((BytesReader<E>)CharSequenceReader.of(),factory);
    writer((BytesWriter<E>)CharSequenceWriter.instance());
  }
 else   if (eClass == Void.class) {
    agileMarshaller((AgileBytesMarshaller<E>)VoidMarshaller.INSTANCE,factory);
  }
 else   if (eClass == Long.class) {
    agileMarshaller((AgileBytesMarshaller<E>)LongMarshaller.INSTANCE,factory);
  }
 else   if (eClass == Double.class) {
    agileMarshaller((AgileBytesMarshaller<E>)DoubleMarshaller.INSTANCE,factory);
  }
 else   if (eClass == Integer.class) {
    agileMarshaller((AgileBytesMarshaller<E>)IntegerMarshaller.INSTANCE,factory);
  }
 else   if (eClass == byte[].class) {
    reader((BytesReader<E>)ByteArrayMarshaller.INSTANCE,factory);
    interop((BytesInterop<E>)ByteArrayMarshaller.INSTANCE);
  }
 else   if (concreteClass(eClass)) {
    BytesMarshaller<E> marshaller=chooseMarshaller(eClass,eClass);
    if (marshaller != null)     marshaller(marshaller,factory);
  }
  if (role == Role.VALUE && concreteClass(eClass) && marshallerUseFactory(eClass)) {
    factory(factory);
  }
}