sig
  module Make_pp :
    functor
      (P : sig val printer : unit -> Printer_api.extensible_printer_type end)
      -> Printer_api.S_pp
  module Make :
    functor
      (P : sig
             class printer : unit -> Printer_api.extensible_printer_type
           end)
      -> Printer_api.S
end