Program: 59851
Project: 59851
Buggy source:
public ClassNode(Node parent,Class<T> clazz,boolean isPrefixTarget,boolean isSingleton){
  super(parent,clazz);
  this.clazz=clazz;
  this.isPrefixTarget=isPrefixTarget;
  this.isSingleton=isSingleton;
  boolean injectable=true;
  if (clazz.isLocalClass() || clazz.isMemberClass()) {
    if (!Modifier.isStatic(clazz.getModifiers())) {
      injectable=false;
    }
  }
  Constructor<T>[] constructors=(Constructor<T>[])clazz.getDeclaredConstructors();
  List<ConstructorDef<T>> injectableConstructors=new ArrayList<ConstructorDef<T>>();
  for (int k=0; k < constructors.length; k++) {
    if (constructors[k].getAnnotation(Inject.class) != null) {
      if (!injectable) {
        throw new IllegalArgumentException("String_Node_Str" + clazz);
      }
      if (constructors[k].isSynthetic()) {
        throw new IllegalStateException("String_Node_Str");
      }
      Class<?>[] paramTypes=constructors[k].getParameterTypes();
      Annotation[][] paramAnnotations=constructors[k].getParameterAnnotations();
      if (paramTypes.length != paramAnnotations.length) {
        throw new IllegalStateException();
      }
      ConstructorArg[] args=new ConstructorArg[paramTypes.length];
      for (int i=0; i < paramTypes.length; i++) {
        Parameter named=null;
        for (int j=0; j < paramAnnotations[i].length; j++) {
          Annotation annotation=paramAnnotations[i][j];
          if (annotation instanceof Parameter) {
            named=(Parameter)annotation;
            Node n;
            try {
              n=getNode(named.value());
            }
 catch (            NameResolutionException e) {
              n=buildPathToNode(named.value(),false);
            }
            if (!(n instanceof NamedParameterNode)) {
              throw new IllegalStateException();
            }
            NamedParameterNode<?> np=(NamedParameterNode<?>)n;
            if (!ReflectionUtilities.isCoercable(paramTypes[i],np.argClass)) {
              throw new IllegalArgumentException("String_Node_Str" + paramTypes[i] + "String_Node_Str"+ np.name+ "String_Node_Str"+ np.argClass);
            }
          }
        }
        args[i]=new ConstructorArg(paramTypes[i],named);
      }
      ConstructorDef<T> def=new ConstructorDef<T>(args,constructors[k]);
      if (injectableConstructors.contains(def)) {
        throw new IllegalStateException("String_Node_Str" + clazz + "String_Node_Str"+ def+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
      }
 else {
        injectableConstructors.add(def);
      }
    }
  }
  this.injectableConstructors=injectableConstructors.toArray((ConstructorDef<T>[])new ConstructorDef[0]);
}

Fixed version (ground truth):
public ClassNode(Node parent,Class<T> clazz,boolean isPrefixTarget,boolean isSingleton){
  super(parent,clazz);
  this.clazz=clazz;
  this.isPrefixTarget=isPrefixTarget;
  this.isSingleton=isSingleton;
  boolean injectable=true;
  if (clazz.isLocalClass() || clazz.isMemberClass()) {
    if (!Modifier.isStatic(clazz.getModifiers())) {
      injectable=false;
    }
  }
  Constructor<T>[] constructors=(Constructor<T>[])clazz.getDeclaredConstructors();
  List<ConstructorDef<T>> injectableConstructors=new ArrayList<ConstructorDef<T>>();
  for (int k=0; k < constructors.length; k++) {
    if (constructors[k].getAnnotation(Inject.class) != null) {
      if (!injectable) {
        throw new IllegalArgumentException("String_Node_Str" + clazz);
      }
      if (constructors[k].isSynthetic()) {
        throw new IllegalStateException("String_Node_Str");
      }
      Class<?>[] paramTypes=constructors[k].getParameterTypes();
      Annotation[][] paramAnnotations=constructors[k].getParameterAnnotations();
      if (paramTypes.length != paramAnnotations.length) {
        throw new IllegalStateException();
      }
      ConstructorArg[] args=new ConstructorArg[paramTypes.length];
      for (int i=0; i < paramTypes.length; i++) {
        Parameter named=null;
        for (int j=0; j < paramAnnotations[i].length; j++) {
          Annotation annotation=paramAnnotations[i][j];
          if (annotation instanceof Parameter) {
            named=(Parameter)annotation;
          }
        }
        args[i]=new ConstructorArg(paramTypes[i],named);
      }
      ConstructorDef<T> def=new ConstructorDef<T>(args,constructors[k]);
      if (injectableConstructors.contains(def)) {
        throw new IllegalStateException("String_Node_Str" + clazz + "String_Node_Str"+ def+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
      }
 else {
        injectableConstructors.add(def);
      }
    }
  }
  this.injectableConstructors=injectableConstructors.toArray((ConstructorDef<T>[])new ConstructorDef[0]);
}