TODO -> ignore in grammar, and inline C code checks implementation