Subject: | |
From: | |
Reply To: | |
Date: | Fri, 2 Dec 2016 09:47:58 -0500 |
Content-Type: | text/plain |
Parts/Attachments: |
|
|
On 12/02/2016 04:07 AM, Andrew Parsloe wrote:
> I stumbled on the following quirk recently:
>
> \tl_clear:N \l_tmpa_tl
> \fp_eval:n { round( \l_tmpa_tl, 4) }
>
> gives 4 as the answer (or whatever the rounding value is). Usually, in
> the situation where this arose, \l_tmpa_tl is a string of digits
> possibly including a decimal point. In this instance it was empty. Okay,
> I can check for that, but I wonder if l3fp should do so, and either give
> an error, as
>
> \fp_set:Nn \l_tmpa_fp { \l_tmpa_tl }
>
> does when the token list is empty, or give a conventional 0 as answer?
>
> Andrew
Thanks, this is a bug. A better behavior would be to throw an error and
give nan.
This is due to my recent commit adding random number support: to allow
for rand() I did the easiest thing which was to allow and ignore empty
arguments.
I'll fix it some time this month.
Best regards,
Bruno
|
|
|