Every refusal is by name with the reason, so the tests assert on the reasons and weakening one to a bare "cannot" breaks them: a slice, an Option, a union, a fixed array, a map, a returned string, a callback, an unknown type, a struct field C cannot hold, and two Flan names for one C symbol. The rest is text about text, which is the honest scope: what a wrapper does is settled by clang, and what is worth checking in OCaml is the shape of what clang is handed. Two cases assert the typedef's field order against a defstruct and against the same defstruct permuted, because only the pair rules out a generator that sorts — and sorting is exactly the mutation the raylib cases cannot see, since every raylib struct is fields of one size and a rename changes no offset. What the raylib cases do see is a permuted defstruct, and that was run: Rectangle width/height, Vector2 x/y, Image width/height, Image with data moved last, Texture2D id/format, Color r/a and Camera2D offset/target all go red. Texture2D width/mipmaps stays green, which is what NEXT.md already says headless cannot pin — the one green is the control, not a gap.
Description
Languages
OCaml
67.2%
Emacs Lisp
15.2%
C
10.4%
HTML
2.9%
Standard ML
2.8%
Other
1.5%