Buggy code:
public class CodeClass extends ASTNode implements IClass { protected CompilationUnit unit ; protected int modifiers ; protected String name ; protected String qualifiedName ; protected String fullName ; protected String internalName ; protected List < Annotation > annotations = new ArrayList ( 1 ) ; protected IType superType = Type . OBJECT ; protected List < IType > interfaces = new ArrayList ( 1 ) ; protected Type type ; protected List < ITypeVariable > generics ; protected ClassBody body ; protected IMethod functionalMethod ; protected IField instanceField ; protected IMethod constructor ; protected IMethod superConstructor ; public CodeClass ( ) { } public CodeClass ( ICodePosition position , CompilationUnit unit ) { } @ Override public CompilationUnit getUnit ( ) { } @ Override public Package getPackage ( ) { } @ Override public boolean equals ( IClass iclass ) { } @ Override public void setType ( IType type ) { } @ Override public Type getType ( ) { } @ Override public IClass getTheClass ( ) { } @ Override public void setAnnotations ( List < Annotation > annotations ) { } @ Override public List < Annotation > getAnnotations ( ) { } @ Override public void addAnnotation ( Annotation annotation ) { } private boolean processAnnotation ( Annotation annotation ) { } @ Override public Annotation getAnnotation ( IType type ) { } @ Override public void setModifiers ( int modifiers ) { } @ Override public int getModifiers ( ) { } @ Override public boolean addModifier ( int mod ) { } @ Override public void removeModifier ( int mod ) { } @ Override public boolean hasModifier ( int mod ) { } @ Override public boolean isAbstract ( ) { } @ Override public int getAccessLevel ( ) { } @ Override public byte getAccessibility ( ) { } @ Override public void setName ( String name , String qualifiedName ) { } @ Override public void setName ( String name ) { } @ Override public String getName ( ) { } @ Override public void setQualifiedName ( String name ) { } @ Override public String getQualifiedName ( ) { } @ Override public boolean isName ( String name ) { } @ Override public void setFullName ( String name ) { } @ Override public String getFullName ( ) { } @ Override public void setGeneric ( ) { } @ Override public boolean isGeneric ( ) { } @ Override public void addType ( IType type ) { } @ Override public void setSuperType ( IType type ) { } @ Override public IType getSuperType ( ) { } @ Override public boolean isSuperType ( IType type ) { } @ Override public void setInterfaces ( List < IType > interfaces ) { } @ Override public List < IType > getInterfaces ( ) { } @ Override public void addInterface ( IType type ) { } @ Override public void setBody ( ClassBody body ) { } @ Override public ClassBody getBody ( ) { } @ Override public IField getInstanceField ( ) { } @ Override public IMethod getFunctionalMethod ( ) { } @ Override public String getInternalName ( ) { } @ Override public String getSignature ( ) { } @ Override public String [ ] getInterfaceArray ( ) { } @ Override public void resolveTypes ( List < Marker > markers , IContext context ) { } @ Override public void resolve ( List < Marker > markers , IContext context ) { for ( Iterator < Annotation > iterator = this . annotations . iterator ( ) ; iterator . hasNext ( ) ; ) { Annotation a = iterator . next ( ) ; if ( this . processAnnotation ( a ) ) { iterator . remove ( ) ; continue ; } a . resolve ( markers , context ) ; } if ( ( ( this . modifiers ) & ( Modifiers . OBJECT_CLASS ) ) != 0 ) { <START_BUG> this . instanceField = new dyvil . tools . compiler . ast . field . Field ( this , "$instance" , this . getType ( ) , ( ( ( Modifiers . PUBLIC ) | ( Modifiers . STATIC ) ) | ( Modifiers . SYNTHETIC ) ) , Collections . EMPTY_LIST ) ; <END_BUG> } if ( ( this . body ) != null ) { this . body . resolve ( markers , this ) ; } } @ Override public void check ( List < Marker > markers , IContext context ) { } @ Override public void foldConstants ( ) { } @ Override public boolean isStatic ( ) { } @ Override public Type getThisType ( ) { } @ Override public Package resolvePackage ( String name ) { } @ Override public IClass resolveClass ( String name ) { } @ Override public FieldMatch resolveField ( String name ) { } @ Override public MethodMatch resolveMethod ( IValue instance , String name , List < IValue > arguments ) { } @ Override public MethodMatch resolveConstructor ( List < IValue > arguments ) { } @ Override public void getMethodMatches ( List < MethodMatch > list , IValue instance , String name , List < IValue > arguments ) { } @ Override public void getConstructorMatches ( List < MethodMatch > list , List < IValue > arguments ) { } @ Override public boolean isMember ( IMember member ) { } @ Override public byte getAccessibility ( IMember member ) { } @ Override public void write ( ClassWriter writer ) { } @ Override public void toString ( String prefix , StringBuilder buffer ) { } }

Fix:
this . instanceField = new dyvil . tools . compiler . ast . field . Field ( this , "$instance" , this . getType ( ) , ( ( ( Modifiers . PUBLIC ) | ( Modifiers . CONST ) ) | ( Modifiers . SYNTHETIC ) ) , Collections . EMPTY_LIST ) ;