[latex3-commits] [git/LaTeX3-latex3-latex3] morechk: make/fix chk errors being expandable (01ed7db)
Will Robertson
wspr81 at gmail.com
Mon Apr 15 13:44:45 CEST 2019
Repository : https://github.com/latex3/latex3
On branch : morechk
Link : https://github.com/latex3/latex3/commit/01ed7db3d820bdc33403e5f1e06f4361333b4e27
>---------------------------------------------------------------
commit 01ed7db3d820bdc33403e5f1e06f4361333b4e27
Author: Will Robertson <wspr81 at gmail.com>
Date: Wed Jan 16 15:03:48 2019 +1030
make/fix chk errors being expandable
>---------------------------------------------------------------
01ed7db3d820bdc33403e5f1e06f4361333b4e27
l3kernel/l3basics.dtx | 48 ++-
l3kernel/l3fp-convert.dtx | 2 +-
l3kernel/l3int.dtx | 2 +-
l3kernel/l3skip.dtx | 6 +-
l3kernel/testfiles/m3chk001.tlg | 88 +++--
l3kernel/testfiles/m3chk004.lvt | 96 ++++++
l3kernel/testfiles/{m3rand001.tlg => m3chk004.tlg} | 345 ++++++++++----------
7 files changed, 358 insertions(+), 229 deletions(-)
diff --git a/l3kernel/l3basics.dtx b/l3kernel/l3basics.dtx
index 7f51e80..e264ae6 100644
--- a/l3kernel/l3basics.dtx
+++ b/l3kernel/l3basics.dtx
@@ -1813,23 +1813,41 @@
{ \token_to_str:N ##1 }
}
}
- \cs_set_protected:Npn \__kernel_chk_var_exist:NT ##1 ##2
+ \cs_set_protected:Npn \__kernel_chk_cs_exist:N ##1
{
\@@_suspended:T \use_none:nnn
- \cs_if_exist:NTF ##1
- { ##2 }
+ \cs_if_exist:NF ##1
{
- \__kernel_msg_error:nnx { kernel } { non-declared-variable }
+ \__kernel_msg_error:nnx { kernel } { command-not-defined }
{ \token_to_str:N ##1 }
}
}
- \cs_set_protected:Npn \__kernel_chk_cs_exist:N ##1
+ \cs_set:Npn \__kernel_chk_exp_cs_exist:N ##1
{
\@@_suspended:T \use_none:nnn
\cs_if_exist:NF ##1
{
- \__kernel_msg_error:nnx { kernel } { command-not-defined }
- { \token_to_str:N ##1 }
+ \__kernel_msg_expandable_error:nnn
+ { kernel } { command-not-defined } { ##1 }
+ }
+ }
+ \cs_set:Npn \__kernel_chk_exp_var_exist:N ##1
+ {
+ \@@_suspended:T \use_none:nnn
+ \cs_if_exist:NF ##1
+ {
+ \__kernel_msg_expandable_error:nnn
+ { kernel } { non-declared-variable } { ##1 }
+ }
+ }
+ \cs_set:Npn \__kernel_chk_exp_var_exist:NT ##1 ##2
+ {
+ \@@_suspended:T \use_none:nnnn
+ \cs_if_exist:NTF ##1
+ { ##2 }
+ {
+ \__kernel_msg_expandable_error:nnn
+ { kernel } { non-declared-variable } { ##1 }
}
}
\cs_set_protected:Npn \__kernel_chk_var_scope:NN
@@ -1853,8 +1871,10 @@
\exp_args:Nc \cs_set_protected:Npn { @@_check-declarations_off: }
{
\cs_set_protected:Npn \__kernel_chk_var_exist:N ##1 { }
- \cs_set_protected:Npn \__kernel_chk_var_exist:NT ##1##2 { ##2 }
\cs_set_protected:Npn \__kernel_chk_cs_exist:N ##1 { }
+ \cs_set:Npn \__kernel_chk_exp_cs_exist:N ##1 { }
+ \cs_set:Npn \__kernel_chk_exp_var_exist:N ##1 { }
+ \cs_set:Npn \__kernel_chk_exp_var_exist:NT ##1##2 { ##2 }
\cs_set_protected:Npn \__kernel_chk_var_local:N ##1 { }
\cs_set_protected:Npn \__kernel_chk_var_global:N ##1 { }
\cs_set_protected:Npn \__kernel_chk_var_scope:NN ##1##2 { }
@@ -1863,8 +1883,12 @@
{ \exp_args:Nc \__kernel_chk_cs_exist:N }
\cs_set_protected:Npn \__kernel_chk_var_exist:c
{ \exp_args:Nc \__kernel_chk_var_exist:N }
- \cs_set_protected:Npn \__kernel_chk_var_exist:cT
- { \exp_args:Nc \__kernel_chk_var_exist:NT }
+ \cs_set:Npn \__kernel_chk_exp_cs_exist:c
+ { \exp_args:Nc \__kernel_chk_exp_cs_exist:N }
+ \cs_set:Npn \__kernel_chk_exp_var_exist:c
+ { \exp_args:Nc \__kernel_chk_exp_var_exist:N }
+ \cs_set:Npn \__kernel_chk_exp_var_exist:cT
+ { \exp_args:Nc \__kernel_chk_exp_var_exist:NT }
\tex_ifodd:D \l at expl@check at declarations@bool
\use:c { @@_check-declarations_on: }
\else:
@@ -2826,12 +2850,12 @@
{
\cs_set:Npn \cs_use:N #1
{
- \__kernel_chk_cs_exist:N #1
+ \__kernel_chk_exp_cs_exist:N #1
#1
}
\cs_set:Npn \cs_use:c #1
{
- \__kernel_chk_cs_exist:c {#1}
+ \__kernel_chk_exp_cs_exist:c {#1}
\cs:w #1 \cs_end:
}
}
diff --git a/l3kernel/l3fp-convert.dtx b/l3kernel/l3fp-convert.dtx
index 52a6057..f8658a7 100644
--- a/l3kernel/l3fp-convert.dtx
+++ b/l3kernel/l3fp-convert.dtx
@@ -548,7 +548,7 @@
{
\cs_new:Npn \fp_use:N #1
{
- \__kernel_chk_var_exist:NT #1 { \fp_to_decimal:N #1 }
+ \__kernel_chk_exp_var_exist:NT #1 { \fp_to_decimal:N #1 }
}
}
{
diff --git a/l3kernel/l3int.dtx b/l3kernel/l3int.dtx
index 6312a2c..0f7ecb4 100644
--- a/l3kernel/l3int.dtx
+++ b/l3kernel/l3int.dtx
@@ -1480,7 +1480,7 @@
{
\cs_new:Npn \int_use:c #1
{
- \__kernel_chk_var_exist:c {#1}
+ \__kernel_chk_exp_var_exist:c {#1}
\tex_the:D \cs:w #1 \cs_end:
}
}
diff --git a/l3kernel/l3skip.dtx b/l3kernel/l3skip.dtx
index ba38049..60f5aa1 100644
--- a/l3kernel/l3skip.dtx
+++ b/l3kernel/l3skip.dtx
@@ -1675,7 +1675,7 @@
{
\cs_new:Npn \dim_use:c #1
{
- \__kernel_chk_var_exist:c {#1}
+ \__kernel_chk_exp_var_exist:c {#1}
\tex_the:D \cs:w #1 \cs_end:
}
}
@@ -2030,7 +2030,7 @@
{
\cs_new:Npn \skip_use:c #1
{
- \__kernel_chk_var_exist:c {#1}
+ \__kernel_chk_exp_var_exist:c {#1}
\tex_the:D \cs:w #1 \cs_end:
}
}
@@ -2310,7 +2310,7 @@
{
\cs_new:Npn \muskip_use:c #1
{
- \__kernel_chk_var_exist:c {#1}
+ \__kernel_chk_exp_var_exist:c {#1}
\tex_the:D \cs:w #1 \cs_end:
}
}
diff --git a/l3kernel/testfiles/m3chk001.tlg b/l3kernel/testfiles/m3chk001.tlg
index 9cb2687..30d1cfe 100644
--- a/l3kernel/testfiles/m3chk001.tlg
+++ b/l3kernel/testfiles/m3chk001.tlg
@@ -106,26 +106,23 @@ of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
-! You can't use `\edef' after \the.
-\use:x #1->\cs_set_nopar:Npx
- \l__exp_internal_tl {#1}\l__exp_internal_tl
-l. ... }
-I'm forgetting what you said and using zero instead.
-! LaTeX3 Error: The variable \token_to_str:N \l_B_int has not been declared
-(LaTeX3) on line ....
-For immediate help type H <return>.
- ...
+! Undefined control sequence.
+<argument> \LaTeX3 error:
+ The variable \l_B_int has not been declared \msg...
l. ... }
-This is a coding error.
-Checking is active, and you have tried do so something like:
- \tl_set:Nn \token_to_str:N \l_B_int { ... }
-without first having:
- \tl_new:N \token_to_str:N \l_B_int
-LaTeX will create the variable and continue.
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
! You can't use `\relax' after \the.
<recently read> \l_B_int
l. ... }
I'm forgetting what you said and using zero instead.
+! You can't use `the character 0' after \the.
+<inserted text> 0
+l. ... }
+I'm forgetting what you said and using zero instead.
============================================================
DIM
! Undefined control sequence.
@@ -137,26 +134,23 @@ of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
-! You can't use `\edef' after \the.
-\use:x #1->\cs_set_nopar:Npx
- \l__exp_internal_tl {#1}\l__exp_internal_tl
-l. ... }
-I'm forgetting what you said and using zero instead.
-! LaTeX3 Error: The variable \token_to_str:N \l_B_dim has not been declared
-(LaTeX3) on line ....
-For immediate help type H <return>.
- ...
+! Undefined control sequence.
+<argument> \LaTeX3 error:
+ The variable \l_B_dim has not been declared \msg...
l. ... }
-This is a coding error.
-Checking is active, and you have tried do so something like:
- \tl_set:Nn \token_to_str:N \l_B_dim { ... }
-without first having:
- \tl_new:N \token_to_str:N \l_B_dim
-LaTeX will create the variable and continue.
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
! You can't use `\relax' after \the.
<recently read> \l_B_dim
l. ... }
I'm forgetting what you said and using zero instead.
+! You can't use `the character 0' after \the.
+<inserted text> 0
+l. ... }
+I'm forgetting what you said and using zero instead.
============================================================
SKIP
! Undefined control sequence.
@@ -341,25 +335,23 @@ spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
============================================================
FP
-! LaTeX3 Error: The variable \l_B_fp has not been declared on line ....
-For immediate help type H <return>.
- ...
+! Undefined control sequence.
+<argument> \LaTeX3 error:
+ The variable \l_B_fp has not been declared \msg_...
l. ... }
-This is a coding error.
-Checking is active, and you have tried do so something like:
- \tl_set:Nn \l_B_fp { ... }
-without first having:
- \tl_new:N \l_B_fp
-LaTeX will create the variable and continue.
-! LaTeX3 Error: The variable \l_B_fp has not been declared on line ....
-For immediate help type H <return>.
- ...
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+! Undefined control sequence.
+<argument> \LaTeX3 error:
+ The variable \l_B_fp has not been declared \msg_...
l. ... }
-This is a coding error.
-Checking is active, and you have tried do so something like:
- \tl_set:Nn \l_B_fp { ... }
-without first having:
- \tl_new:N \l_B_fp
-LaTeX will create the variable and continue.
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
============================================================
============================================================
diff --git a/l3kernel/testfiles/m3chk004.lvt b/l3kernel/testfiles/m3chk004.lvt
new file mode 100644
index 0000000..5fd61ab
--- /dev/null
+++ b/l3kernel/testfiles/m3chk004.lvt
@@ -0,0 +1,96 @@
+%
+% Copyright (C) 2019 The LaTeX3 Project
+%
+
+\documentclass{minimal}
+\input{regression-test}
+
+
+
+% Leave some padding so that the line numbers
+% of the tests don't change later on.
+
+
+
+\RequirePackage[enable-debug]{expl3}
+\ExplSyntaxOn
+\debug_on:n { all }
+\ExplSyntaxOff
+
+\begin{document}
+
+\START
+\AUTHOR{Will Robertson}
+\ExplSyntaxOn
+
+\OMIT
+\cs_new:Npn \cs_aaa: {}
+\tl_new:N \l_A_tl
+\str_new:N \l_A_str
+%% there is no \quark_use:N :)
+\int_new:N \l_A_int
+\dim_new:N \l_A_dim
+\skip_new:N \l_A_skip
+\muskip_new:N \l_A_muskip
+\fp_new:N \l_A_fp
+\seq_new:N \l_A_seq
+\clist_new:N \l_A_clist
+\TIMO
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\TEST { Use~ variables~ (defined) }
+ {
+ \TYPE{CS: \cs_use:N \cs_aaa: }\SEPARATOR
+ \TYPE{CS: \cs_use:c {cs_aaa:} }\SEPARATOR
+ \TYPE{TL: \tl_use:N \l_A_tl }\SEPARATOR
+ \TYPE{TL: \tl_use:c {l_A_tl} }\SEPARATOR
+ \TYPE{STR: \str_use:N \l_A_str }\SEPARATOR
+ \TYPE{STR: \str_use:c {l_A_str} }\SEPARATOR
+ \TYPE{INT: \int_use:N \l_A_int }\SEPARATOR
+ \TYPE{INT: \int_use:c {l_A_int} }\SEPARATOR
+ \TYPE{DIM: \dim_use:N \l_A_dim }\SEPARATOR
+ \TYPE{DIM: \dim_use:c {l_A_dim} }\SEPARATOR
+ \TYPE{SKIP: \skip_use:N \l_A_skip }\SEPARATOR
+ \TYPE{SKIP: \skip_use:c {l_A_skip} }\SEPARATOR
+ \TYPE{MUSKIP: \muskip_use:N \l_A_muskip }\SEPARATOR
+ \TYPE{MUSKIP: \muskip_use:c {l_A_muskip} }\SEPARATOR
+ \TYPE{SEQ: \seq_use:Nn \l_A_seq {} }\SEPARATOR
+ \TYPE{SEQ: \seq_use:cn {l_A_seq} {} }\SEPARATOR
+ \TYPE{CLIST: \clist_use:Nn \l_A_clist {} }\SEPARATOR
+ \TYPE{CLIST: \clist_use:cn {l_A_clist} {} }\SEPARATOR
+ \TYPE{FP: \fp_use:N \l_A_fp }\SEPARATOR
+ \TYPE{FP: \fp_use:c {l_A_fp} }\SEPARATOR
+ }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\TEST { Use~ variables~ (undefined) }
+ {
+ \TYPE{CS: \cs_use:N \cs_bbb: }\SEPARATOR
+ \TYPE{CS: \cs_use:c {cs_bbb:} }\SEPARATOR
+ \TYPE{TL: \tl_use:N \l_B_tl }\SEPARATOR
+ \TYPE{TL: \tl_use:c {l_B_tl} }\SEPARATOR
+ \TYPE{STR: \str_use:N \l_B_str }\SEPARATOR
+ \TYPE{STR: \str_use:c {l_B_str} }\SEPARATOR
+ \TYPE{INT: \int_use:N \l_B_int }\SEPARATOR
+ \TYPE{INT: \int_use:c {l_B_int} }\SEPARATOR
+ \TYPE{DIM: \dim_use:N \l_B_dim }\SEPARATOR
+ \TYPE{DIM: \dim_use:c {l_B_dim} }\SEPARATOR
+ \TYPE{SKIP: \skip_use:N \l_B_skip }\SEPARATOR
+ \TYPE{SKIP: \skip_use:c {l_B_skip} }\SEPARATOR
+ \TYPE{MUSKIP: \muskip_use:N \l_B_muskip }\SEPARATOR
+ \TYPE{MUSKIP: \muskip_use:c {l_B_muskip} }\SEPARATOR
+ \TYPE{SEQ: \seq_use:Nn \l_B_seq {} }\SEPARATOR
+ \TYPE{SEQ: \seq_use:cn {l_B_seq} {} }\SEPARATOR
+ \TYPE{CLIST: \clist_use:Nn \l_B_clist {} }\SEPARATOR
+ \TYPE{CLIST: \clist_use:cn {l_B_clist} {} }\SEPARATOR
+ \TYPE{FP: \fp_use:N \l_B_fp }\SEPARATOR
+ \TYPE{FP: \fp_use:c {l_B_fp} }\SEPARATOR
+ }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\END
+\end{document}
diff --git a/l3kernel/testfiles/m3rand001.tlg b/l3kernel/testfiles/m3chk004.tlg
similarity index 66%
copy from l3kernel/testfiles/m3rand001.tlg
copy to l3kernel/testfiles/m3chk004.tlg
index b62f6c1..9318819 100644
--- a/l3kernel/testfiles/m3rand001.tlg
+++ b/l3kernel/testfiles/m3chk004.tlg
@@ -1,50 +1,56 @@
This is a generated file for the LaTeX (2e + expl3) validation system.
Don't change this file in any respect.
-Author: Bruno Le Floch
-============================================================
-TEST 1: Random floating point number
-============================================================
-0.240735155533066
-0.5852214353430764
-0.7180176671856077
-0.3615756894278821
-0.4478174648957779
-============================================================
-============================================================
-TEST 2: Random integer
-============================================================
-2
-1
-1
-2
-1
--9999999999999999
--9999999999999998
--9999999999999999
--9999999999999999
--9999999999999999
-174462024
-43469076
-964237967
-281796922
-571531749
-647645817006079
-6227277400369880
-4448422924240445
-5041817501660381
-2577799052913806
-8570669930344415
-4534632579885364
-9640121450586277
-928036911121429
--493197266565851
-============================================================
-============================================================
-TEST 3: Random bad arguments
+Author: Will Robertson
+============================================================
+TEST 1: Use variables (defined)
+============================================================
+CS:
+============================================================
+CS:
+============================================================
+TL:
+============================================================
+TL:
+============================================================
+STR:
+============================================================
+STR:
+============================================================
+INT:0
+============================================================
+INT:0
+============================================================
+DIM:0.0pt
+============================================================
+DIM:0.0pt
+============================================================
+SKIP:0.0pt
+============================================================
+SKIP:0.0pt
+============================================================
+MUSKIP:0.0mu
+============================================================
+MUSKIP:0.0mu
+============================================================
+SEQ:
+============================================================
+SEQ:
+============================================================
+CLIST:
+============================================================
+CLIST:
+============================================================
+FP:0
+============================================================
+FP:0
+============================================================
+============================================================
+============================================================
+TEST 2: Use variables (undefined)
============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- Missing number before ','.
+ Control sequence \cs_bbb: undefined.
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
@@ -52,283 +58,294 @@ misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
! Undefined control sequence.
-<argument> \LaTeX3 error:
- rand() expects between 0 and 0 arguments.
+<argument> \cs_bbb:
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+CS:
+============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- rand() expects between 0 and 0 arguments.
+ Control sequence \cs_bbb: undefined.
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+CS:\cs_bbb:
+============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- rand() expects between 0 and 0 arguments.
+ Erroneous variable \l_B_tl used!
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+TL:
+============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- Arguments in randint() are invalid.
+ Erroneous variable \l_B_tl used!
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+TL:
+============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- Invalid operation randint(1, 0)
+ Erroneous variable \l_B_str used!
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+STR:
+============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- Invalid operation randint(1, 1e16)
+ Erroneous variable \l_B_str used!
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+STR:
+============================================================
! Undefined control sequence.
-<argument> \LaTeX3 error:
- Invalid operation randint(9900000000000000, 1e16)
+<write> INT:\int_use:N \l_B_int
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+! You can't use `end-group character }' after \the.
+<inserted text> }
+ \endwrite
+l. ... }
+I'm forgetting what you said and using zero instead.
+Runaway text?
+INT:0
+! Forbidden control sequence found while scanning text of \write.
+<inserted text>
+ }
+l. ... }
+I suspect you have forgotten a `}', causing me
+to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+INT:0
+============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- Invalid operation randint(-1e16, -1000000000000000)
+ The variable \l_B_int has not been declared \msg...
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+! You can't use `\relax' after \the.
+<recently read> \l_B_int
+l. ... }
+I'm forgetting what you said and using zero instead.
+INT:0
+============================================================
! Undefined control sequence.
-<argument> \LaTeX3 error:
- Arguments in randint(1, 2, 3) are invalid.
+<write> DIM:\dim_use:N \l_B_dim
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+! You can't use `end-group character }' after \the.
+<inserted text> }
+ \endwrite
+l. ... }
+I'm forgetting what you said and using zero instead.
+Runaway text?
+DIM:0
+! Forbidden control sequence found while scanning text of \write.
+<inserted text>
+ }
+l. ... }
+I suspect you have forgotten a `}', causing me
+to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+DIM:0
+============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- Invalid operation randint(1, nan)
+ The variable \l_B_dim has not been declared \msg...
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+! You can't use `\relax' after \the.
+<recently read> \l_B_dim
+l. ... }
+I'm forgetting what you said and using zero instead.
+DIM:0
+============================================================
! Undefined control sequence.
-<argument> \LaTeX3 error:
- Invalid operation randint(1, inf)
+<write> SKIP:\skip_use:N \l_B_skip
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+! You can't use `end-group character }' after \the.
+<inserted text> }
+ \endwrite
+l. ... }
+I'm forgetting what you said and using zero instead.
+Runaway text?
+SKIP:0
+! Forbidden control sequence found while scanning text of \write.
+<inserted text>
+ }
+l. ... }
+I suspect you have forgotten a `}', causing me
+to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+SKIP:0
+============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- Invalid operation randint(nan, 0)
+ The variable \l_B_skip has not been declared \ms...
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+! You can't use `\relax' after \the.
+<recently read> \l_B_skip
+l. ... }
+I'm forgetting what you said and using zero instead.
+SKIP:0
+============================================================
! Undefined control sequence.
-<argument> \LaTeX3 error:
- Invalid operation randint(inf, 0)
+<write> MUSKIP:\muskip_use:N \l_B_muskip
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+! You can't use `end-group character }' after \the.
+<inserted text> }
+ \endwrite
+l. ... }
+I'm forgetting what you said and using zero instead.
+Runaway text?
+MUSKIP:0
+! Forbidden control sequence found while scanning text of \write.
+<inserted text>
+ }
+l. ... }
+I suspect you have forgotten a `}', causing me
+to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+MUSKIP:0
+============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- Bounds ordered backwards in \int_rand:nn {1} {0}.
+ The variable \l_B_muskip has not been declared \...
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+! You can't use `\relax' after \the.
+<recently read> \l_B_muskip
+l. ... }
+I'm forgetting what you said and using zero instead.
+MUSKIP:0
+============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- rand() expects between 0 and 0 arguments.
+ Erroneous variable \l_B_seq used!
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+SEQ:
+============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- Arguments in randint((1, 2),) are invalid.
+ Erroneous variable \l_B_seq used!
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+SEQ:
+============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- Arguments in randint((), ()) are invalid.
+ Erroneous variable \l_B_clist used!
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
-nan
-nan
-nan
-nan
-1
-nan
-nan
-nan
-nan
-nan
-nan
-nan
-nan
-nan
-0
-nan
-nan
-nan
-============================================================
-============================================================
-TEST 4: Random integer in a range
-============================================================
-|-1|1|-1|1|0|0|1|-1|1|0|1|1|-1|-1|1|
-|-2147483647|-2147483647|-2147483647|-2147483647|-2147483647|-2147483647|-2147483647|-2147483647|-2147483647|-2147483647|-2147483647|-2147483647|-2147483647|-2147483647|-2147483647|
-|-2147483645|-2147483647|-2147483645|-2147483639|-2147483646|-2147483641|-2147483637|-2147483641|-2147483637|-2147483643|-2147483639|-2147483642|-2147483644|-2147483637|-2147483645|
-|-596581922|1829512184|-11249077|167662723|1619170613|-591422440|-440749724|1350338119|2054692807|-1880919426|-973590519|645137860|1859361099|1234117834|925471348|
-============================================================
-============================================================
-TEST 5: Random tl item
-============================================================
-||
-|\A |\A |\A |\A |\A |\A |\A |\A |\A |\A |\A |\A |\A |\A |\A |
-| \B |\A |\A |\A | \B |\A |\A |\A | \B | \B | \B | \B |\A |\A | \B |
-|\C |\A |\C |\C |\C |{\B }|\A |\A |\A |{\B }|\C |{\B }|\C |{\B }|{\B }|
-||||||||||||||||
-||||||||||||||||
-| || | | || | || | | | |||
-|&| |&|&|##|##|&| | | |##| |\A | | |
-============================================================
-============================================================
-TEST 6: Random clist item
-============================================================
-||
-|\A |\B |\B |\A |\A |\A |\B |\A |\B |\B |\A |\B |\A |\B |\A |
-| \B |\A | ,| ,|{}|\A | ,| ,| \B | ,| \B |\A |\A |{}|\A |
-||||||||||||||||
-|||| ,| ,| ,| ,|| ,|||| ,| ,| ,|
-|##|##|\\|&|##|,|,|,|\A |##|\A |&|,|\A |\\|
-============================================================
-============================================================
-TEST 7: Random seq item
-============================================================
-||||||||||||||||
-| ,||||| ,|||| ,| ,|| ,|||
-|\A |{\\}|\A |&|\A |##|\A |&|\A |,|##|\A |##|{\\}|,|
-============================================================
-============================================================
-TEST 8: Random prop key/value
-============================================================
-||||||||||||||||
-|{\e }{}|{\e }{}|{\a }{\A }|{\b }{{\B }}|{\b }{{\B }}|{\a }{\A }|{\e }{}|{\b }{{\B }}|{\b }{{\B }}|{\a }{\A }|{\e }{}|{\a }{\A }|{\e }{}|{\a }{\A }|{\a }{\A }|
-============================================================
-============================================================
-TEST 9: sys rand commands
-============================================================
-1,71
-0,25
-0,36
-1,71
-1,55
-============================================================
-============================================================
-TEST 10: Random integer in a range
+CLIST:
============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- Bounds ordered backwards in \int_rand:nn {1} {-1}.
+ Erroneous variable \l_B_clist used!
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
-0
-|1226726384|1265411165|1466672355|1314947273|1555392836|894057289|2137710626|710093757|1198929759|1627898431|721692715|464072634|708598373|1712025573|1781216300|
-|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|
-|9|6|10|4|6|10|3|8|7|1|6|2|1|9|10|
-============================================================
-============================================================
-TEST 11: Random intarray item
+CLIST:
============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- Bounds ordered backwards in \int_rand:nn {1} {0}.
+ The variable \l_B_fp has not been declared \msg_...
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
+FP:
+============================================================
! Undefined control sequence.
<argument> \LaTeX3 error:
- Access to an entry beyond an array's bounds.
+ The variable \l_B_fp has not been declared \msg_...
l. ... }
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
-0
-|1|3|1|3|3|3|1|3|3|3|3|3|3|3|3|
-============================================================
-Defining \g_testb_intarray on line ...
-============================================================
-TEST 12: Random intarray contents
-============================================================
--1,0,2,-2,2,-1,2,-2,3,-1,3,2,0,4,5
-820580739,-112220571,-698712122,-22653540,596754623,569851830,-76814189,812455767,554030471,858568271,-761913564,-698174727,-492774578,-1035763579,1060453552
-============================================================
-============================================================
-TEST 13: Random integer (issue 507)
+FP:
============================================================
-0
-2
-0
-1
-2
============================================================
More information about the latex3-commits
mailing list