Remove unused warning on recursive definitions
Currently LIGO warns about not using the function being defined in a recursive definition. However, this conflicts with the way that JsLIGO programs are compiled, as they are made recursive by default, e.g.
let k = ([x, _] : [int, int]) : int => x;
gets into ast-typed as
const k = rec (k:( int * int ) -> int => lambda (#184) return let x = #184.0 in let _ = #184.1 in x )
which makes LIGO warn about unused k
in k
's declaration.
This MR removes this warning for recursive functions.