bugReporter.reportBug(new BugInstance("CN_IDIOM_NO_SUPER_CALL", (obj.isPublic() || obj.isProtected()) ?
bugReporter.reportBug(new BugInstance(this, "CN_IDIOM_NO_SUPER_CALL", (obj.isPublic() || obj.isProtected()) ?
	public void visitAfter(JavaClass obj) {		if (!check) return;		if (implementsCloneableDirectly && !hasCloneMethod) {			if (!referencesCloneMethod)				bugReporter.reportBug(new BugInstance("CN_IDIOM", NORMAL_PRIORITY)				        .addClass(this));		}		if (hasCloneMethod && !invokesSuperClone && !isFinal && obj.isPublic()) {			bugReporter.reportBug(new BugInstance("CN_IDIOM_NO_SUPER_CALL", (obj.isPublic() || obj.isProtected()) ?			        NORMAL_PRIORITY : LOW_PRIORITY)			        .addClass(this)			        .addMethod(cloneMethodAnnotation));		}		/*		if (!isCloneable && hasCloneMethod) {			if (throwsExceptions)			System.out.println("has public clone method that throws exceptions and class is not Cloneable: " + betterClassName) ;			else System.out.println("has public clone method but is not Cloneable: " + betterClassName) ;			}		*/	}