Module Ast_invariants

module Ast_invariants: sig .. end

Check AST invariants

Warning: this module is unstable and part of compiler-libs.


val structure : Parsetree.structure -> unit
val signature : Parsetree.signature -> unit
val check_loc_ghost : (Ast_iterator.iterator -> Ast_iterator.iterator -> 'a -> unit) ->
'a -> source_contents:string -> unit

Checks the invariant of Location.t's loc_ghost field, that are stated in location.mli. This can be run with -dparsetree-loc-ghost-invariants, which is used slightly in the testsuite, but should be used more to find more of the places where the invariant is broken.