TODO replace the fmt with a specialized formatting struct for the purpose
needed by TypeKind. fmt is namely a typeless strict that do not encode the
assumed number or arguments when it is used. In other words it do not contain
information regarding the number of '%s'.