avoid `{type error}` being leaked in user-facing messages, particularly when using the `adt_const_params` feature