diff --git a/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java b/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java index 116b6816ee..4ded770940 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java +++ b/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java @@ -2315,7 +2315,9 @@ public class JavaGenerator extends AbstractGenerator { private final void generateRecordSetter0(TypedElementDefinition column, int index, JavaWriter out) { final String className = getStrategy().getJavaClassName(column.getContainer(), Mode.RECORD); - final String setterReturnType = generateFluentSetters() ? className : tokenVoid; + + // [#12459] Kotlin setters must return Unit + final String setterReturnType = generateFluentSetters() && !kotlin ? className : tokenVoid; final String setter = getStrategy().getJavaSetterName(column, Mode.RECORD); final String member = getStrategy().getJavaMemberName(column, Mode.POJO); final String typeFull = getJavaType(column.getType(resolver(out)), out);