Buggy code:
public class NativesGenerator extends JNIGenerator { boolean enterExitMacro ; public NativesGenerator ( ) { } public void generateCopyright ( ) { } public void generateIncludes ( ) { } public void generate ( Class clazz , String methodName ) { } public void generate ( Class clazz ) { } public void generate ( Method [ ] methods ) { } public void generate ( Method method ) { MethodData methodData = getMetaData ( ) . getMetaData ( method ) ; if ( methodData . getFlag ( "no_gen" ) ) return ; Class returnType = method . getReturnType ( ) ; Class [ ] paramTypes = method . getParameterTypes ( ) ; String function = getFunctionName ( method ) ; <START_BUG> if ( ! ( ( returnType == ( Void . TYPE ) ) || ( returnType . isPrimitive ( ) ) ) ) { <END_BUG> output ( "Warning:<seq2seq4repair_space>bad<seq2seq4repair_space>return<seq2seq4repair_space>type.<seq2seq4repair_space>:" ) ; outputln ( method . toString ( ) ) ; return ; } generateSourceStart ( function ) ; generateFunctionPrototype ( method , function , paramTypes , returnType ) ; generateFunctionBody ( method , methodData , function , paramTypes , returnType ) ; generateSourceEnd ( function ) ; outputln ( ) ; } public void setEnterExitMacro ( boolean enterExitMacro ) { } void generateExcludes ( Method [ ] methods ) { } void generateNativeMacro ( Class clazz ) { } boolean generateGetParameter ( Method method , int i , Class paramType , ParameterData paramData , boolean critical , int indent ) { } void generateSetParameter ( int i , Class paramType , ParameterData paramData , boolean critical ) { } void generateExitMacro ( Method method , String function ) { } void generateEnterMacro ( Method method , String function ) { } boolean generateLocalVars ( Method method , Class [ ] paramTypes , Class returnType ) { } boolean generateGetters ( Method method , Class [ ] paramTypes ) { } void generateSetters ( Method method , Class [ ] paramTypes ) { } void generateDynamicFunctionCall ( Method method , MethodData methodData , Class [ ] paramTypes , Class returnType , boolean needsReturn ) { } void generateFunctionCallLeftSide ( Method method , MethodData methodData , Class returnType , boolean needsReturn ) { } void generateFunctionCallRightSide ( Method method , MethodData methodData , Class [ ] paramTypes , int paramStart ) { } void generateFunctionCall ( Method method , MethodData methodData , Class [ ] paramTypes , Class returnType , boolean needsReturn ) { } void generateReturn ( Method method , Class returnType , boolean needsReturn ) { } void generateGTKmemmove ( Method method , String function , Class [ ] paramTypes ) { } void generateFunctionBody ( Method method , MethodData methodData , String function , Class [ ] paramTypes , Class returnType ) { } void generateFunctionPrototype ( Method method , String function , Class [ ] paramTypes , Class returnType ) { } void generateSourceStart ( String function ) { } void generateSourceEnd ( String function ) { } boolean isCritical ( Class paramType , ParameterData paramData ) { } boolean isSystemClass ( Class type ) { } public static void main ( String [ ] args ) { } }

Fix:
if ( ! ( ( ( ( returnType == ( Void . TYPE ) ) || ( returnType . isPrimitive ( ) ) ) || ( isSystemClass ( returnType ) ) ) || ( returnType == ( String . class ) ) ) ) {