Dear camlp4ers,

A syntax extension of my own fails or succeeds on a given file depending on the output :

[gesundheit:~/fitdistrplus 18:11]$camlp4o ~/.opam/3.12.1/lib/R/R_syntax.cma src/fitdistrplus.ml
open Batteries
 
open Rbase

[...] 

          method scale =
            List.nth
              (R.floats_of_t
                 (let a7818b19c = r in
                  let _ () =
                    let _ = (a7818b19c#compound : Rbase.compound 'abdf89974)
                    in
                      fun (ab922d605 : 'abdf89974) ->
                        (ab922d605#estimate : 'a8ec34edb)
                  in (a7818b19c#component "estimate" : 'a8ec34edb)))
              1
          method location_sd = assert false
          method scale_sd = assert false
          method fitdistcens = fitdistcens
        end
     
  end
 

[gesundheit:~/fitdistrplus 18:11]$camlp4o ~/.opam/3.12.1/lib/R/R_syntax.cma src/fitdistrplus.ml > rien.ml
File "src/fitdistrplus.ml", line 157, characters 47-48:
Failure: "invalid type"

I observe this behaviour with versions 3.12.1 and 4.00.0

Does it ring a bell to someone?

Cheers,
  Philippe.