> > > And then: What's the error message in \tlp_use:N for? It looks
> > > so arbitrarily. Probably it's not?
> > well I don't know when that was added, but i can see some logic behind it (not
> > that i think it is worth having really (as i think one should get rid of the
> > whole cmd). I think the idea was that a tlp is a storage bin so could never be
> > "\scan_stop:", but either "empty" or contains a list of tokens. So
> > "\scan_stop:" means something like \tlp_use:c tried to use a tlp that simply
> > doesn't exist
> Oh, of course. I couldn't figure out where the \scan_stop: should
> come from. But then I didn't thought about \tlp_use:c.
obviously if the tlp has to be constructed first one needs a construction
function, so \tlp_use:c is necessary even if one can leave out the \tlp_use:N
and from experience if the construction ends up with a previously undeclared
tlp then usually things go wrong as it then equals \scan_stop: which is
neither expandable (a feature tlps have) nor a "possible" value ie not at all the
so the check and the error message make sense here.