diff --git a/src/generators/genjvm.ml b/src/generators/genjvm.ml index 95038772dc8..ca9c1db3470 100644 --- a/src/generators/genjvm.ml +++ b/src/generators/genjvm.ml @@ -2581,7 +2581,13 @@ class tclass_to_jvm gctx c = object(self) let field mtype cf = match cf.cf_kind with | Method (MethNormal | MethInline) -> List.iter (fun cf -> - if not (has_class_field_flag cf CfExtern) then self#generate_method gctx jc c mtype cf + let is_weird_abstract_field_without_expression = match cf.cf_expr,c.cl_kind with + | None,KAbstractImpl _ -> + true + | _ -> + false + in + if not (has_class_field_flag cf CfExtern) && not (is_weird_abstract_field_without_expression) then self#generate_method gctx jc c mtype cf ) (cf :: List.filter (fun cf -> has_class_field_flag cf CfOverload) cf.cf_overloads) | _ -> if not (has_class_flag c CInterface) && is_physical_field cf then self#generate_field gctx jc c mtype cf