summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx')
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx42
1 files changed, 30 insertions, 12 deletions
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx b/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
index 9e37e602bf8..3ac5cea4fb7 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
@@ -41,7 +41,7 @@
% }^^A
% }
%
-% \date{Released 2017/07/15}
+% \date{Released 2017/07/19}
%
% \maketitle
%
@@ -507,19 +507,37 @@
% data structures. These are created globally, as there is a need to
% avoid any strange effects if the coffin is created inside a group.
% This means that the usual rule about \cs[no-index]{l_\ldots} variables has
-% to be broken.
+% to be broken. The \cs{__debug_suspend_log:} and
+% \cs{__debug_resume_log:} functions prevent \cs{prop_clear_new:c}
+% from writing useless information to the log file; however they only
+% exist if debugging is enabled.
% \begin{macrocode}
-\cs_new_protected:Npn \coffin_new:N #1
+\__debug:TF
{
- \box_new:N #1
- \__debug_suspend_log:
- \prop_clear_new:c { l_@@_corners_ \__int_value:w #1 _prop }
- \prop_clear_new:c { l_@@_poles_ \__int_value:w #1 _prop }
- \prop_gset_eq:cN { l_@@_corners_ \__int_value:w #1 _prop }
- \c_@@_corners_prop
- \prop_gset_eq:cN { l_@@_poles_ \__int_value:w #1 _prop }
- \c_@@_poles_prop
- \__debug_resume_log:
+ \cs_new_protected:Npn \coffin_new:N #1
+ {
+ \box_new:N #1
+ \__debug_suspend_log:
+ \prop_clear_new:c { l_@@_corners_ \__int_value:w #1 _prop }
+ \prop_clear_new:c { l_@@_poles_ \__int_value:w #1 _prop }
+ \prop_gset_eq:cN { l_@@_corners_ \__int_value:w #1 _prop }
+ \c_@@_corners_prop
+ \prop_gset_eq:cN { l_@@_poles_ \__int_value:w #1 _prop }
+ \c_@@_poles_prop
+ \__debug_resume_log:
+ }
+ }
+ {
+ \cs_new_protected:Npn \coffin_new:N #1
+ {
+ \box_new:N #1
+ \prop_clear_new:c { l_@@_corners_ \__int_value:w #1 _prop }
+ \prop_clear_new:c { l_@@_poles_ \__int_value:w #1 _prop }
+ \prop_gset_eq:cN { l_@@_corners_ \__int_value:w #1 _prop }
+ \c_@@_corners_prop
+ \prop_gset_eq:cN { l_@@_poles_ \__int_value:w #1 _prop }
+ \c_@@_poles_prop
+ }
}
\cs_generate_variant:Nn \coffin_new:N { c }
% \end{macrocode}