LATEX-L Archives

Mailing list for the LaTeX3 project

LATEX-L@LISTSERV.UNI-HEIDELBERG.DE

Options: Use Classic View

Use Proportional Font
Show HTML Part by Default
Show All Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Bruno Le Floch <[log in to unmask]>
Sun, 7 Jun 2015 12:58:35 +0200
text/plain (37 lines)
On 5/12/15, Frank Mittelbach <[log in to unmask]> wrote:
> Am 12.05.2015 um 16:34 schrieb Joseph Wright:
>
>>
>> Probably we should add something: as Ulrike says, at the very least
>> \prop_show should complain.
>
> we probably should, but I don't think that \prop_show:N would be the
> right place. True, some other "prop" functions do seem to work if you
> start from a "c" generated name rather than with \prop_new:N but this is
> at best by chance: they are defective and who knows what other defects
> are hidden or appear if further "prop" functions are being written.
>
> So despite the time penalty I think a quick check always that an
> argument that should be a "prop" is not equal to \relax is safer.
>
> frank

The problem also comes up with tl (and seq).

    \RequirePackage{expl3}
    \ExplSyntaxOn
    \tl_put_right:cn { l_tl } { \boom }
    \tl_use:c { l_tl }

gives

    ! TeX capacity exceeded, sorry [input stack size=5000].
    \l_tl ->\l_tl
                  \boom

But \tl_show:c { l_tl } shows "\l_tl \boom" so experts can understand
what's going on.  Not sure what should be done, since adding a check
to all \tl_put_right:cn seems like a rather large cost.

Bruno

ATOM RSS1 RSS2