1# ncurses 6.1 - patch 20191207 - Thomas E. Dickey
2#
3# ------------------------------------------------------------------------------
4#
5# Ncurses 6.1 is at
6# 	ftp.gnu.org:/pub/gnu
7#
8# Patches for ncurses 6.1 can be found at
9# 	ftp://ftp.invisible-island.net/ncurses/6.1
10#	http://invisible-mirror.net/archives/ncurses/6.1
11#
12# ------------------------------------------------------------------------------
13# ftp://ftp.invisible-island.net/ncurses/6.1/ncurses-6.1-20191207.patch.gz
14# patch by Thomas E. Dickey <dickey@invisible-island.net>
15# created  Sun Dec  8 02:13:02 UTC 2019
16# ------------------------------------------------------------------------------
17# Ada95/package/debian/compat           |    2
18# Ada95/package/debian/control          |    2
19# NEWS                                  |    6 +
20# VERSION                               |    2
21# dist.mk                               |    4
22# doc/html/man/adacurses6-config.1.html |    2
23# doc/html/man/captoinfo.1m.html        |    2
24# doc/html/man/clear.1.html             |    2
25# doc/html/man/curs_trace.3x.html       |  141 +++++++++++++++++++++-----------
26# doc/html/man/form.3x.html             |    2
27# doc/html/man/infocmp.1m.html          |    2
28# doc/html/man/infotocap.1m.html        |    2
29# doc/html/man/menu.3x.html             |    2
30# doc/html/man/ncurses.3x.html          |    2
31# doc/html/man/ncurses6-config.1.html   |    2
32# doc/html/man/panel.3x.html            |    2
33# doc/html/man/tabs.1.html              |    2
34# doc/html/man/terminfo.5.html          |    2
35# doc/html/man/tic.1m.html              |    2
36# doc/html/man/toe.1m.html              |    2
37# doc/html/man/tput.1.html              |    2
38# doc/html/man/tset.1.html              |    2
39# include/curses.tail                   |    5 -
40# include/term_entry.h                  |    6 -
41# include/tic.h                         |    4
42# man/curs_trace.3x                     |  113 +++++++++++++++++++------
43# ncurses/base/lib_freeall.c            |    6 -
44# ncurses/curses.priv.h                 |    4
45# ncurses/tinfo/entries.c               |    4
46# ncurses/trace/lib_trace.c             |   22 ++++
47# package/debian-mingw/changelog        |    4
48# package/debian-mingw/compat           |    2
49# package/debian-mingw64/changelog      |    4
50# package/debian-mingw64/compat         |    2
51# package/debian/changelog              |    4
52# package/debian/compat                 |    2
53# package/mingw-ncurses.nsi             |    4
54# package/mingw-ncurses.spec            |    2
55# package/ncurses.map                   |    3
56# package/ncurses.spec                  |    2
57# package/ncurses.sym                   |    3
58# package/ncursest.map                  |    3
59# package/ncursest.spec                 |    2
60# package/ncursest.sym                  |    3
61# package/ncursestw.map                 |    3
62# package/ncursestw.sym                 |    3
63# package/ncursesw.map                  |    3
64# package/ncursesw.sym                  |    3
65# test/demo_menus.c                     |    8 -
66# test/hashtest.c                       |    6 -
67# test/lrtest.c                         |    8 -
68# test/ncurses.c                        |   15 +--
69# test/package/debian-mingw/compat      |    2
70# test/package/debian-mingw/control     |    2
71# test/package/debian-mingw64/compat    |    2
72# test/package/debian-mingw64/control   |    2
73# test/package/debian/compat            |    2
74# test/package/debian/control           |    4
75# test/padview.c                        |    6 -
76# test/test.priv.h                      |    8 -
77# test/testcurs.c                       |    4
78# test/testscanw.c                      |    6 -
79# test/view.c                           |   17 ++-
80# test/worm.c                           |    8 -
81# 64 files changed, 319 insertions(+), 186 deletions(-)
82# ------------------------------------------------------------------------------
83Index: Ada95/package/debian/compat
84--- ncurses-6.1-20191130+/Ada95/package/debian/compat	2018-01-13 20:21:09.000000000 +0000
85+++ ncurses-6.1-20191207/Ada95/package/debian/compat	2019-12-07 23:33:48.000000000 +0000
86@@ -1 +1 @@
87-7
88+9
89Index: Ada95/package/debian/control
90--- ncurses-6.1-20191130+/Ada95/package/debian/control	2018-01-01 13:11:48.000000000 +0000
91+++ ncurses-6.1-20191207/Ada95/package/debian/control	2019-12-07 23:34:17.000000000 +0000
92@@ -9,7 +9,7 @@
93 Package: adacurses
94 Architecture: any
95 Depends: ${shlibs:Depends}, ${misc:Depends}
96-Description: AdaCurses - Ada95 binding for ncurses
97+Description: Ada95 binding for ncurses
98  This package installs as "adacurses" to avoid conflict with other packages.
99  This is the Ada95 binding from the ncurses distribution.
100  .
101Index: NEWS
102Prereq:  1.3412
103--- ncurses-6.1-20191130+/NEWS	2019-11-30 22:27:28.000000000 +0000
104+++ ncurses-6.1-20191207/NEWS	2019-12-07 23:36:25.000000000 +0000
105@@ -25,7 +25,7 @@
106 -- sale, use or other dealings in this Software without prior written        --
107 -- authorization.                                                            --
108 -------------------------------------------------------------------------------
109--- $Id: NEWS,v 1.3412 2019/11/30 22:27:28 tom Exp $
110+-- $Id: NEWS,v 1.3415 2019/12/07 23:36:25 tom Exp $
111 -------------------------------------------------------------------------------
112
113 This is a log of changes that ncurses has gone through since Zeyd started
114@@ -45,6 +45,10 @@
115 Changes through 1.9.9e did not credit all contributions;
116 it is not possible to add this information.
117
118+20191207
119+	+ fix a few warnings for test-package builds
120+	+ add curses_trace(), to replace trace().
121+
122 20191130
123 	+ add portability section to curs_getcchar manpage (prompted by
124 	  discussion with Nick Black).
125Index: VERSION
126--- ncurses-6.1-20191130+/VERSION	2019-11-30 14:52:31.000000000 +0000
127+++ ncurses-6.1-20191207/VERSION	2019-12-07 10:19:49.000000000 +0000
128@@ -1 +1 @@
129-5:0:10	6.1	20191130
130+5:0:10	6.1	20191207
131Index: dist.mk
132Prereq:  1.1317
133--- ncurses-6.1-20191130+/dist.mk	2019-11-30 14:52:31.000000000 +0000
134+++ ncurses-6.1-20191207/dist.mk	2019-12-07 10:19:49.000000000 +0000
135@@ -25,7 +25,7 @@
136 # use or other dealings in this Software without prior written               #
137 # authorization.                                                             #
138 ##############################################################################
139-# $Id: dist.mk,v 1.1317 2019/11/30 14:52:31 tom Exp $
140+# $Id: dist.mk,v 1.1318 2019/12/07 10:19:49 tom Exp $
141 # Makefile for creating ncurses distributions.
142 #
143 # This only needs to be used directly as a makefile by developers, but
144@@ -37,7 +37,7 @@
145 # These define the major/minor/patch versions of ncurses.
146 NCURSES_MAJOR = 6
147 NCURSES_MINOR = 1
148-NCURSES_PATCH = 20191130
149+NCURSES_PATCH = 20191207
150
151 # We don't append the patch to the version, since this only applies to releases
152 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
153Index: doc/html/man/adacurses6-config.1.html
154--- ncurses-6.1-20191130+/doc/html/man/adacurses6-config.1.html	2019-11-30 22:44:57.000000000 +0000
155+++ ncurses-6.1-20191207/doc/html/man/adacurses6-config.1.html	2019-12-07 20:48:39.000000000 +0000
156@@ -125,7 +125,7 @@
157 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
158        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
159
160-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
161+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
162
163
164
165Index: doc/html/man/captoinfo.1m.html
166--- ncurses-6.1-20191130+/doc/html/man/captoinfo.1m.html	2019-11-30 22:44:57.000000000 +0000
167+++ ncurses-6.1-20191207/doc/html/man/captoinfo.1m.html	2019-12-07 20:48:39.000000000 +0000
168@@ -198,7 +198,7 @@
169 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
170        <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
171
172-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
173+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
174
175
176 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
177Index: doc/html/man/clear.1.html
178--- ncurses-6.1-20191130+/doc/html/man/clear.1.html	2019-11-30 22:44:57.000000000 +0000
179+++ ncurses-6.1-20191207/doc/html/man/clear.1.html	2019-12-07 20:48:39.000000000 +0000
180@@ -148,7 +148,7 @@
181 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
182        <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
183
184-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
185+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
186
187
188
189Index: doc/html/man/curs_trace.3x.html
190--- ncurses-6.1-20191130+/doc/html/man/curs_trace.3x.html	2019-03-16 19:34:45.000000000 +0000
191+++ ncurses-6.1-20191207/doc/html/man/curs_trace.3x.html	2019-12-07 20:48:42.000000000 +0000
192@@ -1,6 +1,6 @@
193 <!--
194   ****************************************************************************
195-  * Copyright (c) 2000-2016,2017 Free Software Foundation, Inc.              *
196+  * Copyright (c) 2000-2017,2019 Free Software Foundation, Inc.              *
197   *                                                                          *
198   * Permission is hereby granted, free of charge, to any person obtaining a  *
199   * copy of this software and associated documentation files (the            *
200@@ -26,7 +26,7 @@
201   * sale, use or other dealings in this Software without prior written       *
202   * authorization.                                                           *
203   ****************************************************************************
204-  * @Id: curs_trace.3x,v 1.19 2017/11/18 23:47:37 tom Exp @
205+  * @Id: curs_trace.3x,v 1.20 2019/12/07 18:55:02 tom Exp @
206 -->
207 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
208 <HTML>
209@@ -46,15 +46,15 @@
210
211
212 </PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
213-       <STRONG>trace</STRONG>, <STRONG>_tracef</STRONG>, <STRONG>_traceattr</STRONG>, <STRONG>_traceattr2</STRONG>, <STRONG>_tracecchar_t</STRONG>, <STRONG>_tracecchar_t2</STRONG>,
214-       <STRONG>_tracechar</STRONG>, <STRONG>_tracechtype</STRONG>, <STRONG>_tracechtype2</STRONG>, <STRONG>_nc_tracebits</STRONG>, <STRONG>_tracedump</STRONG>,
215-       <STRONG>_tracemouse</STRONG> - <STRONG>curses</STRONG> debugging routines
216+       <STRONG>curses_trace</STRONG>, <STRONG>trace</STRONG>, <STRONG>_tracef</STRONG>, <STRONG>_traceattr</STRONG>, <STRONG>_traceattr2</STRONG>, <STRONG>_tracecchar_t</STRONG>,
217+       <STRONG>_tracecchar_t2</STRONG>, <STRONG>_tracechar</STRONG>, <STRONG>_tracechtype</STRONG>, <STRONG>_tracechtype2</STRONG>, <STRONG>_nc_tracebits</STRONG>,
218+       <STRONG>_tracedump</STRONG>, <STRONG>_tracemouse</STRONG> - <STRONG>curses</STRONG> debugging routines
219
220
221 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
222        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
223
224-       <STRONG>void</STRONG> <STRONG>trace(const</STRONG> <STRONG>unsigned</STRONG> <STRONG>int</STRONG> <EM>param</EM><STRONG>);</STRONG>
225+       <STRONG>unsigned</STRONG> <STRONG>curses_trace(const</STRONG> <STRONG>unsigned</STRONG> <EM>param</EM><STRONG>);</STRONG>
226
227        <STRONG>void</STRONG> <STRONG>_tracef(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>format</EM><STRONG>,</STRONG> <STRONG>...);</STRONG>
228
229@@ -70,46 +70,64 @@
230        <STRONG>char</STRONG> <STRONG>*_nc_tracebits(void);</STRONG>
231        <STRONG>char</STRONG> <STRONG>*_tracemouse(const</STRONG> <STRONG>MEVENT</STRONG> <STRONG>*</STRONG><EM>event</EM><STRONG>);</STRONG>
232
233+       /* deprecated */
234+       <STRONG>void</STRONG> <STRONG>trace(const</STRONG> <STRONG>unsigned</STRONG> <STRONG>int</STRONG> <EM>param</EM><STRONG>);</STRONG>
235+
236
237 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
238-       The  <STRONG>trace</STRONG>  routines  are  used for debugging the ncurses libraries, as
239-       well as applications which use the ncurses libraries.  These  functions
240-       are  normally available only with the debugging library e.g., <EM>libncurs-</EM>
241-       <EM>es</EM><STRONG>_</STRONG><EM>g.a</EM>, but may be compiled into any model (shared, static, profile) by
242-       defining  the  symbol  <STRONG>TRACE</STRONG>.   Additionally,  some  functions are only
243-       available with the wide-character configuration of the libraries.
244+       The <EM>curses</EM> <EM>trace</EM> routines are used for debugging the ncurses libraries,
245+       as well as applications which use the ncurses libraries.  Some  limita-
246+       tions apply:
247+
248+       <STRONG>o</STRONG>   Aside from <STRONG>curses_trace</STRONG>, the other functions are normally available
249+           only with the debugging library e.g., <EM>libncurses</EM><STRONG>_</STRONG><EM>g.a</EM>.
250+
251+           All of the trace functions may be compiled into any model  (shared,
252+           static, profile) by defining the symbol <STRONG>TRACE</STRONG>.
253+
254+       <STRONG>o</STRONG>   Additionally,  the  functions  which use <STRONG>cchar_t</STRONG> are only available
255+           with the wide-character configuration of the libraries.
256
257
258 </PRE><H3><a name="h3-Functions">Functions</a></H3><PRE>
259        The principal parts of this interface are
260
261-       <STRONG>o</STRONG>   <STRONG>trace</STRONG>, which selectively enables different tracing features, and
262+       <STRONG>o</STRONG>   <STRONG>curses_trace</STRONG>, which selectively enables different tracing features,
263+           and
264
265        <STRONG>o</STRONG>   <STRONG>_tracef</STRONG>, which writes formatted data to the <EM>trace</EM> file.
266
267-       Calling <STRONG>trace</STRONG> with a nonzero parameter creates the file  <STRONG>trace</STRONG>  in  the
268-       current  directory  for output.  If the file already exists, no tracing
269-       is done.
270-
271-       The other functions either return a pointer to a string-area (allocated
272-       by the corresponding function), or return no value (such as <STRONG>_tracedump</STRONG>,
273-       which implements the screen dump for <STRONG>TRACE_UPDATE</STRONG>).  The caller  should
274-       not  free  these  strings, since the allocation is reused on successive
275-       calls.  To work around the problem of a single  string-area  per  func-
276-       tion,  some use a buffer-number parameter, telling the library to allo-
277-       cate additional string-areas.
278+           The other functions either return a pointer to a string-area (allo-
279+           cated by the corresponding function), or return no value  (such  as
280+           <STRONG>_tracedump</STRONG>,  which  implements  the  screen dump for <STRONG>TRACE_UPDATE</STRONG>).
281+           The caller should not free these strings, since the  allocation  is
282+           reused on successive calls.  To work around the problem of a single
283+           string-area per  function,  some  use  a  buffer-number  parameter,
284+           telling the library to allocate additional string-areas.
285+
286+       The <STRONG>curses_trace</STRONG> function is always available, whether or not the other
287+       trace functions are available:
288+
289+       <STRONG>o</STRONG>   If tracing is available, calling <STRONG>curses_trace</STRONG> with a nonzero param-
290+           eter updates the trace mask, and returns the previous trace mask.
291+
292+           When the trace mask is nonzero, ncurses creates the file "trace" in
293+           the current directory for output.  If the file already  exists,  no
294+           tracing is done.
295+
296+       <STRONG>o</STRONG>   If tracing is not available, <STRONG>curses_trace</STRONG> returns zero (0).
297
298
299 </PRE><H3><a name="h3-Trace-Parameter">Trace Parameter</a></H3><PRE>
300-       The trace parameter is  formed  by  OR'ing  values  from  the  list  of
301+       The  trace  parameter  is  formed  by  OR'ing  values  from the list of
302        <STRONG>TRACE_</STRONG><EM>xxx</EM> definitions in <STRONG>&lt;curses.h&gt;</STRONG>.  These include:
303
304        <STRONG>TRACE_DISABLE</STRONG>
305             turn off tracing by passing a zero parameter.
306
307-            The  library flushes the output file, but retains an open file-de-
308-            scriptor to the trace file so that it can resume tracing later  if
309-            a nonzero parameter is passed to the <STRONG>trace</STRONG> function.
310+            The library flushes the output file, but retains an open  file-de-
311+            scriptor  to the trace file so that it can resume tracing later if
312+            a nonzero parameter is passed to the <STRONG>curses_trace</STRONG> function.
313
314        <STRONG>TRACE_TIMES</STRONG>
315             trace user and system times of updates.
316@@ -127,11 +145,11 @@
317             trace all character outputs.
318
319        <STRONG>TRACE_ORDINARY</STRONG>
320-            trace  all  update  actions.   The old and new screen contents are
321+            trace all update actions.  The old and  new  screen  contents  are
322             written to the trace file for each refresh.
323
324        <STRONG>TRACE_CALLS</STRONG>
325-            trace all curses calls.  The parameters for each call are  traced,
326+            trace  all curses calls.  The parameters for each call are traced,
327             as well as return values.
328
329        <STRONG>TRACE_VIRTPUT</STRONG>
330@@ -158,14 +176,14 @@
331        <STRONG>TRACE_MAXIMUM</STRONG>
332             maximum trace level, enables all of the separate trace features.
333
334-       Some  tracing  features  are  enabled  whenever  the <STRONG>trace</STRONG> parameter is
335-       nonzero.  Some features overlap.  The specific  names  are  used  as  a
336+       Some tracing features are enabled whenever the  <STRONG>curses_trace</STRONG>  parameter
337+       is  nonzero.   Some features overlap.  The specific names are used as a
338        guideline.
339
340
341 </PRE><H3><a name="h3-Initialization">Initialization</a></H3><PRE>
342-       These  functions  check  the <STRONG>NCURSES_TRACE</STRONG> environment variable, to set
343-       the tracing feature as if <STRONG>trace</STRONG> was called:
344+       These functions check the <STRONG>NCURSES_TRACE</STRONG> environment  variable,  to  set
345+       the tracing feature as if <STRONG>curses_trace</STRONG> was called:
346
347            filter, initscr, new_prescr, newterm, nofilter, restartterm,
348            ripoffline, setupterm, slk_init, tgetent, use_env,
349@@ -173,38 +191,65 @@
350
351
352 </PRE><H3><a name="h3-Command-line-Utilities">Command-line Utilities</a></H3><PRE>
353-       The command-line utilities such as  <STRONG><A HREF="tic.1m.html">tic(1)</A></STRONG>  provide  a  verbose  option
354-       which  extends  the  set  of messages written using the <STRONG>trace</STRONG> function.
355-       Both of these (<STRONG>-v</STRONG> and <STRONG>trace</STRONG>) use the same variable (<STRONG>_nc_tracing</STRONG>), which
356-       determines the messages which are written.
357-
358-       Because  the  command-line  utilities may call initialization functions
359-       such as <STRONG>setupterm</STRONG>, <STRONG>tgetent</STRONG> or <STRONG>use_extended_names</STRONG>, some of their  debug-
360-       ging  output may be directed to the <EM>trace</EM> file if the <STRONG>NCURSES_TRACE</STRONG> en-
361+       The  command-line  utilities  such  as  <STRONG><A HREF="tic.1m.html">tic(1)</A></STRONG> provide a verbose option
362+       which extends the set of messages written using the <STRONG>curses_trace</STRONG>  func-
363+       tion.   Both  of  these  (<STRONG>-v</STRONG>  and  <STRONG>curses_trace</STRONG>)  use the same variable
364+       (<STRONG>_nc_tracing</STRONG>), which determines the messages which are written.
365+
366+       Because the command-line utilities may  call  initialization  functions
367+       such  as <STRONG>setupterm</STRONG>, <STRONG>tgetent</STRONG> or <STRONG>use_extended_names</STRONG>, some of their debug-
368+       ging output may be directed to the <EM>trace</EM> file if the <STRONG>NCURSES_TRACE</STRONG>  en-
369        vironment variable is set:
370
371        <STRONG>o</STRONG>   messages produced in the utility are written to the standard error.
372
373        <STRONG>o</STRONG>   messages produced by the underlying library are written to <EM>trace</EM>.
374
375-       If ncurses is built without tracing, none of the latter  are  produced,
376+       If  ncurses  is built without tracing, none of the latter are produced,
377        and fewer diagnostics are provided by the command-line utilities.
378
379
380 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
381-       Routines  which return a value are designed to be used as parameters to
382+       Routines which return a value are designed to be used as parameters  to
383        the <STRONG>_tracef</STRONG> routine.
384
385
386 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
387-       These functions are not part of the XSI interface.  Some  other  curses
388-       implementations  are  known to have similar, undocumented features, but
389-       they are not compatible with ncurses.
390+       These  functions  are not part of the XSI interface.  Some other curses
391+       implementations are known to have similar features, but  they  are  not
392+       compatible with ncurses:
393+
394+       <STRONG>o</STRONG>   SVr4  provided  <STRONG>traceon</STRONG>  and <STRONG>traceoff</STRONG>, to control whether debugging
395+           information was written to the "trace" file.  While  the  functions
396+           were  always  available, this feature was only enabled if <STRONG>DEBUG</STRONG> was
397+           defined when building the library.
398+
399+           The SVr4 tracing feature is undocumented.
400+
401+       <STRONG>o</STRONG>   PDCurses provides <STRONG>traceon</STRONG> and <STRONG>traceoff</STRONG>, which (like SVr4)  are  al-
402+           ways  available, and enable tracing to the "trace" file only when a
403+           debug-library is built.
404+
405+           PDCurses has a short description of these functions,  with  a  note
406+           that  they are not present in X/Open Curses, ncurses or NetBSD.  It
407+           does not mention SVr4, but the functions'  inclusion  in  a  header
408+           file section labeled "Quasi-standard" hints at the origin.
409+
410+       <STRONG>o</STRONG>   NetBSD  does  not  provide functions for enabling/disabling traces.
411+           It  uses  environment   variables   <STRONG>CURSES_TRACE_MASK</STRONG>   and   <STRONG>CURS-</STRONG>
412+           <STRONG>ES_TRACE_FILE</STRONG>  to  determine  what is traced, and where the results
413+           are written.  This is available only when a debug-library is built.
414
415-       A few functions are not provided when symbol versioning is used:
416+           The NetBSD tracing feature is undocumented.
417+
418+       A few ncurses functions are not  provided  when  symbol  versioning  is
419+       used:
420
421            _nc_tracebits, _tracedump, _tracemouse
422
423+       The  original  <STRONG>trace</STRONG> routine was deprecated because it often conflicted
424+       with application names.
425+
426
427 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
428        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>.
429Index: doc/html/man/form.3x.html
430--- ncurses-6.1-20191130+/doc/html/man/form.3x.html	2019-11-30 22:44:59.000000000 +0000
431+++ ncurses-6.1-20191207/doc/html/man/form.3x.html	2019-12-07 20:48:42.000000000 +0000
432@@ -246,7 +246,7 @@
433        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>  and  related  pages  whose names begin "form_" for detailed
434        descriptions of the entry points.
435
436-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
437+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
438
439
440
441Index: doc/html/man/infocmp.1m.html
442--- ncurses-6.1-20191130+/doc/html/man/infocmp.1m.html	2019-11-30 22:45:00.000000000 +0000
443+++ ncurses-6.1-20191207/doc/html/man/infocmp.1m.html	2019-12-07 20:48:43.000000000 +0000
444@@ -512,7 +512,7 @@
445
446        https://invisible-island.net/ncurses/tctest.html
447
448-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
449+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
450
451
452 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
453Index: doc/html/man/infotocap.1m.html
454--- ncurses-6.1-20191130+/doc/html/man/infotocap.1m.html	2019-11-30 22:45:00.000000000 +0000
455+++ ncurses-6.1-20191207/doc/html/man/infotocap.1m.html	2019-12-07 20:48:43.000000000 +0000
456@@ -90,7 +90,7 @@
457 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
458        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
459
460-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
461+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
462
463
464 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
465Index: doc/html/man/menu.3x.html
466--- ncurses-6.1-20191130+/doc/html/man/menu.3x.html	2019-11-30 22:45:00.000000000 +0000
467+++ ncurses-6.1-20191207/doc/html/man/menu.3x.html	2019-12-07 20:48:44.000000000 +0000
468@@ -221,7 +221,7 @@
469        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>  and  related  pages  whose names begin "menu_" for detailed
470        descriptions of the entry points.
471
472-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
473+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
474
475
476
477Index: doc/html/man/ncurses.3x.html
478--- ncurses-6.1-20191130+/doc/html/man/ncurses.3x.html	2019-11-30 22:45:01.000000000 +0000
479+++ ncurses-6.1-20191207/doc/html/man/ncurses.3x.html	2019-12-07 20:48:45.000000000 +0000
480@@ -59,7 +59,7 @@
481        method of updating  character  screens  with  reasonable  optimization.
482        This  implementation  is  "new  curses"  (ncurses)  and is the approved
483        replacement for 4.4BSD classic curses,  which  has  been  discontinued.
484-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
485+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
486
487        The  <STRONG>ncurses</STRONG>  library emulates the curses library of System V Release 4
488        UNIX, and XPG4 (X/Open Portability Guide) curses  (also  known  as  XSI
489Index: doc/html/man/ncurses6-config.1.html
490--- ncurses-6.1-20191130+/doc/html/man/ncurses6-config.1.html	2019-11-30 22:45:01.000000000 +0000
491+++ ncurses-6.1-20191207/doc/html/man/ncurses6-config.1.html	2019-12-07 20:48:45.000000000 +0000
492@@ -112,7 +112,7 @@
493 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
494        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
495
496-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
497+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
498
499
500
501Index: doc/html/man/panel.3x.html
502--- ncurses-6.1-20191130+/doc/html/man/panel.3x.html	2019-11-30 22:45:01.000000000 +0000
503+++ ncurses-6.1-20191207/doc/html/man/panel.3x.html	2019-12-07 20:48:45.000000000 +0000
504@@ -204,7 +204,7 @@
505 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
506        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
507
508-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
509+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
510
511
512 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
513Index: doc/html/man/tabs.1.html
514--- ncurses-6.1-20191130+/doc/html/man/tabs.1.html	2019-11-30 22:45:01.000000000 +0000
515+++ ncurses-6.1-20191207/doc/html/man/tabs.1.html	2019-12-07 20:48:45.000000000 +0000
516@@ -205,7 +205,7 @@
517 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
518        <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
519
520-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
521+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
522
523
524
525Index: doc/html/man/terminfo.5.html
526--- ncurses-6.1-20191130+/doc/html/man/terminfo.5.html	2019-11-30 22:45:01.000000000 +0000
527+++ ncurses-6.1-20191207/doc/html/man/terminfo.5.html	2019-12-07 20:48:45.000000000 +0000
528@@ -103,7 +103,7 @@
529        have, by specifying how to perform screen operations, and by specifying
530        padding requirements and initialization sequences.
531
532-       This manual describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
533+       This manual describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
534
535
536 </PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>
537Index: doc/html/man/tic.1m.html
538--- ncurses-6.1-20191130+/doc/html/man/tic.1m.html	2019-11-30 22:45:01.000000000 +0000
539+++ ncurses-6.1-20191207/doc/html/man/tic.1m.html	2019-12-07 20:48:45.000000000 +0000
540@@ -460,7 +460,7 @@
541        <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>,   <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>,   <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>,   <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>,   <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
542        <STRONG><A HREF="term.5.html">term(5)</A></STRONG>.  <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.  <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>.
543
544-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
545+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
546
547
548 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
549Index: doc/html/man/toe.1m.html
550--- ncurses-6.1-20191130+/doc/html/man/toe.1m.html	2019-11-30 22:45:01.000000000 +0000
551+++ ncurses-6.1-20191207/doc/html/man/toe.1m.html	2019-12-07 20:48:46.000000000 +0000
552@@ -170,7 +170,7 @@
553        <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>,  <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>,  <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,  <STRONG>ter-</STRONG>
554        <STRONG><A HREF="terminfo.5.html">minfo(5)</A></STRONG>.
555
556-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
557+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
558
559
560
561Index: doc/html/man/tput.1.html
562--- ncurses-6.1-20191130+/doc/html/man/tput.1.html	2019-11-30 22:45:01.000000000 +0000
563+++ ncurses-6.1-20191207/doc/html/man/tput.1.html	2019-12-07 20:48:46.000000000 +0000
564@@ -522,7 +522,7 @@
565 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
566        <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>.
567
568-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
569+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
570
571
572
573Index: doc/html/man/tset.1.html
574--- ncurses-6.1-20191130+/doc/html/man/tset.1.html	2019-11-30 22:45:01.000000000 +0000
575+++ ncurses-6.1-20191207/doc/html/man/tset.1.html	2019-12-07 20:48:46.000000000 +0000
576@@ -389,7 +389,7 @@
577        <STRONG>csh(1)</STRONG>,  <STRONG>sh(1)</STRONG>,  <STRONG>stty(1)</STRONG>,   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>,   <STRONG>tty(4)</STRONG>,   <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>,
578        <STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG>
579
580-       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191130).
581+       This describes <STRONG>ncurses</STRONG> version 6.1 (patch 20191207).
582
583
584
585Index: include/curses.tail
586Prereq:  1.23
587--- ncurses-6.1-20191130+/include/curses.tail	2016-02-13 16:37:45.000000000 +0000
588+++ ncurses-6.1-20191207/include/curses.tail	2019-12-07 16:10:32.000000000 +0000
589@@ -1,4 +1,4 @@
590-/* $Id: curses.tail,v 1.23 2016/02/13 16:37:45 tom Exp $ */
591+/* $Id: curses.tail,v 1.24 2019/12/07 16:10:32 tom Exp $ */
592 /*
593  * vile:cmode:
594  * This file is part of ncurses, designed to be appended after curses.h.in
595@@ -142,7 +142,8 @@
596 #define _tracech_t		_tracechtype
597 #define _tracech_t2		_tracechtype2
598 #endif
599-extern NCURSES_EXPORT(void) trace (const unsigned int);
600+extern NCURSES_EXPORT(void) trace (const unsigned) GCC_DEPRECATED("use curses_trace");
601+extern NCURSES_EXPORT(unsigned) curses_trace (const unsigned);
602
603 /* trace masks */
604 #define TRACE_DISABLE	0x0000	/* turn off tracing */
605Index: include/term_entry.h
606Prereq:  1.57
607--- ncurses-6.1-20191130+/include/term_entry.h	2018-05-26 13:50:53.000000000 +0000
608+++ ncurses-6.1-20191207/include/term_entry.h	2019-12-07 16:11:15.000000000 +0000
609@@ -1,5 +1,5 @@
610 /****************************************************************************
611- * Copyright (c) 1998-2017,2018 Free Software Foundation, Inc.              *
612+ * Copyright (c) 1998-2018,2019 Free Software Foundation, Inc.              *
613  *                                                                          *
614  * Permission is hereby granted, free of charge, to any person obtaining a  *
615  * copy of this software and associated documentation files (the            *
616@@ -32,7 +32,7 @@
617  *     and: Thomas E. Dickey                        1998-on                 *
618  ****************************************************************************/
619
620-/* $Id: term_entry.h,v 1.57 2018/05/26 13:50:53 tom Exp $ */
621+/* $Id: term_entry.h,v 1.58 2019/12/07 16:11:15 tom Exp $ */
622
623 /*
624  *	term_entry.h -- interface to entry-manipulation code
625@@ -208,7 +208,7 @@
626 #endif /* NCURSES_INTERNALS */
627
628 /*
629- * These entrypoints are used by tack.
630+ * These entrypoints were used by tack before 1.08.
631  */
632
633 #undef  NCURSES_TACK_1_08
634Index: include/tic.h
635Prereq:  1.79
636--- ncurses-6.1-20191130+/include/tic.h	2019-07-20 20:19:54.000000000 +0000
637+++ ncurses-6.1-20191207/include/tic.h	2019-12-07 16:05:22.000000000 +0000
638@@ -33,7 +33,7 @@
639  ****************************************************************************/
640
641 /*
642- * $Id: tic.h,v 1.79 2019/07/20 20:19:54 tom Exp $
643+ * $Id: tic.h,v 1.80 2019/12/07 16:05:22 tom Exp $
644  *	tic.h - Global variables and structures for the terminfo compiler.
645  */
646
647@@ -361,7 +361,7 @@
648 #endif /* NCURSES_INTERNALS */
649
650 /*
651- * These entrypoints are used by tack.
652+ * These entrypoints were used by tack before 1.08.
653  */
654
655 #undef  NCURSES_TACK_1_08
656Index: man/curs_trace.3x
657Prereq:  1.19
658--- ncurses-6.1-20191130+/man/curs_trace.3x	2017-11-18 23:47:37.000000000 +0000
659+++ ncurses-6.1-20191207/man/curs_trace.3x	2019-12-07 18:55:02.000000000 +0000
660@@ -1,5 +1,5 @@
661 .\"***************************************************************************
662-.\" Copyright (c) 2000-2016,2017 Free Software Foundation, Inc.              *
663+.\" Copyright (c) 2000-2017,2019 Free Software Foundation, Inc.              *
664 .\"                                                                          *
665 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
666 .\" copy of this software and associated documentation files (the            *
667@@ -26,7 +26,11 @@
668 .\" authorization.                                                           *
669 .\"***************************************************************************
670 .\"
671-.\" $Id: curs_trace.3x,v 1.19 2017/11/18 23:47:37 tom Exp $
672+.\" $Id: curs_trace.3x,v 1.20 2019/12/07 18:55:02 tom Exp $
673+.ie \n(.g .ds `` \(lq
674+.el       .ds `` ``
675+.ie \n(.g .ds '' \(rq
676+.el       .ds '' ''
677 .de bP
678 .ie n  .IP \(bu 4
679 .el    .IP \(bu 2
680@@ -35,6 +39,7 @@
681 .na
682 .hy 0
683 .SH NAME
684+\fBcurses_trace\fR,
685 \fBtrace\fR,
686 \fB_tracef\fR,
687 \fB_traceattr\fR,
688@@ -52,7 +57,7 @@
689 .SH SYNOPSIS
690 \fB#include <curses.h>\fR
691 .sp
692-\fBvoid trace(const unsigned int \fP\fIparam\fP\fB);\fR
693+\fBunsigned curses_trace(const unsigned \fP\fIparam\fP\fB);\fR
694 .sp
695 \fBvoid _tracef(const char *\fP\fIformat\fP\fB, ...);\fR
696 .sp
697@@ -75,34 +80,54 @@
698 \fBchar *_nc_tracebits(void);\fR
699 .br
700 \fBchar *_tracemouse(const MEVENT *\fP\fIevent\fP\fB);\fR
701+.sp
702+/* deprecated */
703+.br
704+\fBvoid trace(const unsigned int \fP\fIparam\fP\fB);\fR
705 .SH DESCRIPTION
706-The \fBtrace\fR routines are used for debugging the ncurses libraries,
707+The \fIcurses trace\fR routines are used for debugging the ncurses libraries,
708 as well as applications which use the ncurses libraries.
709-These functions are normally available only with the debugging library
710-e.g., \fIlibncurses_g.a\fR, but may be compiled into any model (shared, static,
711+Some limitations apply:
712+.bP
713+Aside from \fBcurses_trace\fP,
714+the other functions are normally available only with the debugging library
715+e.g., \fIlibncurses_g.a\fR.
716+.IP
717+All of the trace functions may be compiled into any model (shared, static,
718 profile) by defining the symbol \fBTRACE\fR.
719-Additionally, some functions are only available with the wide-character
720-configuration of the libraries.
721+.bP
722+Additionally, the functions which use \fBcchar_t\fP
723+are only available with the wide-character configuration of the libraries.
724 .SS Functions
725 The principal parts of this interface are
726 .bP
727-\fBtrace\fR, which selectively enables different tracing features, and
728+\fBcurses_trace\fR, which selectively enables different tracing features, and
729 .bP
730 \fB_tracef\fR, which writes formatted data to the \fItrace\fR file.
731-.PP
732-Calling \fBtrace\fR with a nonzero parameter creates the file \fBtrace\fR
733-in the current directory for output.
734-If the file already exists, no tracing is done.
735-.PP
736+.IP
737 The other functions either return a pointer to a string-area
738-(allocated by the corresponding function),
739-or return no value (such as \fB_tracedump\fP, which implements the
740-screen dump for \fBTRACE_UPDATE\fP).
741-The caller should not free these
742-strings, since the allocation is reused on successive calls.
743+(allocated by the corresponding function), or return no value
744+(such as \fB_tracedump\fP,
745+which implements the screen dump for \fBTRACE_UPDATE\fP).
746+The caller should not free these strings,
747+since the allocation is reused on successive calls.
748 To work around the problem of a single string-area per function,
749 some use a buffer-number parameter, telling the library to allocate
750 additional string-areas.
751+.PP
752+The \fBcurses_trace\fR function is always available,
753+whether or not the other trace functions are available:
754+.bP
755+If tracing is available,
756+calling \fBcurses_trace\fR with a nonzero parameter
757+updates the trace mask,
758+and returns the previous trace mask.
759+.IP
760+When the trace mask is nonzero,
761+ncurses creates the file \*(``trace\*('' in the current directory for output.
762+If the file already exists, no tracing is done.
763+.bP
764+If tracing is not available, \fBcurses_trace\fP returns zero (0).
765 .SS Trace Parameter
766 The trace parameter is formed by OR'ing
767 values from the list of \fBTRACE_\fP\fIxxx\fR definitions in \fB<curses.h>\fR.
768@@ -114,7 +139,7 @@
769 The library flushes the output file,
770 but retains an open file-descriptor to the trace file
771 so that it can resume tracing later if a nonzero parameter is passed
772-to the \fBtrace\fP function.
773+to the \fBcurses_trace\fP function.
774 .TP 5
775 .B TRACE_TIMES
776 trace user and system times of updates.
777@@ -164,13 +189,13 @@
778 .B TRACE_MAXIMUM
779 maximum trace level, enables all of the separate trace features.
780 .PP
781-Some tracing features are enabled whenever the \fBtrace\fR parameter
782+Some tracing features are enabled whenever the \fBcurses_trace\fR parameter
783 is nonzero.
784 Some features overlap.
785 The specific names are used as a guideline.
786 .SS Initialization
787 These functions check the \fBNCURSES_TRACE\fP environment variable,
788-to set the tracing feature as if \fBtrace\fP was called:
789+to set the tracing feature as if \fBcurses_trace\fP was called:
790 .RS 4
791 .PP
792 .na
793@@ -194,8 +219,8 @@
794 .SS Command-line Utilities
795 .PP
796 The command-line utilities such as \fBtic\fP(1) provide a verbose option
797-which extends the set of messages written using the \fBtrace\fP function.
798-Both of these (\fB\-v\fP and \fBtrace\fP)
799+which extends the set of messages written using the \fBcurses_trace\fP function.
800+Both of these (\fB\-v\fP and \fBcurses_trace\fP)
801 use the same variable (\fB_nc_tracing\fP),
802 which determines the messages which are written.
803 .PP
804@@ -216,15 +241,49 @@
805 .SH PORTABILITY
806 These functions are not part of the XSI interface.
807 Some other curses implementations are known to
808-have similar, undocumented features,
809-but they are not compatible with ncurses.
810+have similar features,
811+but they are not compatible with ncurses:
812+.bP
813+SVr4 provided \fBtraceon\fP and \fBtraceoff\fP,
814+to control whether debugging information was written
815+to the \*(``trace\*('' file.
816+While the functions were always available,
817+this feature was only enabled
818+if \fBDEBUG\fP was defined when building the library.
819+.IP
820+The SVr4 tracing feature is undocumented.
821+.bP
822+PDCurses provides \fBtraceon\fP and \fBtraceoff\fP,
823+which (like SVr4) are always available,
824+and enable tracing
825+to the \*(``trace\*('' file
826+only when a debug-library is built.
827+.IP
828+PDCurses has a short description of these functions,
829+with a note that they are not present in X/Open Curses,
830+ncurses or NetBSD.
831+It does not mention SVr4,
832+but the functions' inclusion in a header file section
833+labeled \*(``Quasi-standard\*('' hints at the origin.
834+.bP
835+NetBSD does not provide functions for enabling/disabling traces.
836+It uses environment variables
837+\fBCURSES_TRACE_MASK\fP and
838+\fBCURSES_TRACE_FILE\fP to determine what is traced,
839+and where the results are written.
840+This is available only when a debug-library is built.
841+.IP
842+The NetBSD tracing feature is undocumented.
843 .PP
844-A few functions are not provided when symbol versioning is used:
845+A few ncurses functions are not provided when symbol versioning is used:
846 .RS 4
847 .PP
848 _nc_tracebits,
849 _tracedump,
850 _tracemouse
851 .RE
852+.PP
853+The original \fBtrace\fP routine was deprecated because
854+it often conflicted with application names.
855 .SH SEE ALSO
856 \fBcurses\fR(3X).
857Index: ncurses/base/lib_freeall.c
858Prereq:  1.69
859--- ncurses-6.1-20191130+/ncurses/base/lib_freeall.c	2018-03-01 15:02:12.000000000 +0000
860+++ ncurses-6.1-20191207/ncurses/base/lib_freeall.c	2019-12-07 20:28:03.000000000 +0000
861@@ -1,5 +1,5 @@
862 /****************************************************************************
863- * Copyright (c) 1998-2017,2018 Free Software Foundation, Inc.              *
864+ * Copyright (c) 1998-2018,2019 Free Software Foundation, Inc.              *
865  *                                                                          *
866  * Permission is hereby granted, free of charge, to any person obtaining a  *
867  * copy of this software and associated documentation files (the            *
868@@ -39,7 +39,7 @@
869 extern int malloc_errfd;	/* FIXME */
870 #endif
871
872-MODULE_ID("$Id: lib_freeall.c,v 1.69 2018/03/01 15:02:12 tom Exp $")
873+MODULE_ID("$Id: lib_freeall.c,v 1.70 2019/12/07 20:28:03 tom Exp $")
874
875 /*
876  * Free all ncurses data.  This is used for testing only (there's no practical
877@@ -150,7 +150,7 @@
878     NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_ARG);
879     NCURSES_SP_NAME(_nc_freeall) (NCURSES_SP_ARG);
880 #ifdef TRACE
881-    trace(0);			/* close trace file, freeing its setbuf */
882+    curses_trace(0);		/* close trace file, freeing its setbuf */
883     {
884 	static va_list fake;
885 	free(_nc_varargs("?", fake));
886Index: ncurses/curses.priv.h
887Prereq:  1.625
888--- ncurses-6.1-20191130+/ncurses/curses.priv.h	2019-07-28 18:32:05.000000000 +0000
889+++ ncurses-6.1-20191207/ncurses/curses.priv.h	2019-12-07 20:08:06.000000000 +0000
890@@ -34,7 +34,7 @@
891  ****************************************************************************/
892
893 /*
894- * $Id: curses.priv.h,v 1.625 2019/07/28 18:32:05 tom Exp $
895+ * $Id: curses.priv.h,v 1.626 2019/12/07 20:08:06 tom Exp $
896  *
897  *	curses.priv.h
898  *
899@@ -1771,7 +1771,7 @@
900 	if ((_nc_tracing & TRACE_MAXIMUM) == 0) { \
901 	    int t = _nc_getenv_num("NCURSES_TRACE"); \
902 	    if (t >= 0) \
903-		trace((unsigned) t); \
904+		curses_trace((unsigned) t); \
905 	}
906 #else
907 #define START_TRACE() /* nothing */
908Index: ncurses/tinfo/entries.c
909Prereq:  1.27
910--- ncurses-6.1-20191130+/ncurses/tinfo/entries.c	2019-03-09 23:41:08.000000000 +0000
911+++ ncurses-6.1-20191207/ncurses/tinfo/entries.c	2019-12-07 20:28:55.000000000 +0000
912@@ -37,7 +37,7 @@
913
914 #include <tic.h>
915
916-MODULE_ID("$Id: entries.c,v 1.27 2019/03/09 23:41:08 tom Exp $")
917+MODULE_ID("$Id: entries.c,v 1.28 2019/12/07 20:28:55 tom Exp $")
918
919 /****************************************************************************
920  *
921@@ -148,7 +148,7 @@
922
923 #ifdef TRACE
924     T((T_RETURN("")));
925-    trace(0);
926+    curses_trace(0);
927     _nc_trace_buf(-1, (size_t) 0);
928 #endif
929
930Index: ncurses/trace/lib_trace.c
931Prereq:  1.92
932--- ncurses-6.1-20191130+/ncurses/trace/lib_trace.c	2019-03-23 23:47:16.000000000 +0000
933+++ ncurses-6.1-20191207/ncurses/trace/lib_trace.c	2019-12-07 22:32:36.000000000 +0000
934@@ -47,7 +47,7 @@
935
936 #include <ctype.h>
937
938-MODULE_ID("$Id: lib_trace.c,v 1.92 2019/03/23 23:47:16 tom Exp $")
939+MODULE_ID("$Id: lib_trace.c,v 1.94 2019/12/07 22:32:36 tom Exp $")
940
941 NCURSES_EXPORT_VAR(unsigned) _nc_tracing = 0; /* always define this */
942
943@@ -91,10 +91,14 @@
944 #define MyPath		_nc_globals.trace_fname
945 #define MyLevel		_nc_globals.trace_level
946 #define MyNested	_nc_globals.nested_tracef
947+#endif /* TRACE */
948
949-NCURSES_EXPORT(void)
950-trace(const unsigned int tracelevel)
951+NCURSES_EXPORT(unsigned)
952+curses_trace(unsigned tracelevel)
953 {
954+    unsigned result;
955+#if defined(TRACE)
956+    result = _nc_tracing;
957     if ((MyFP == 0) && tracelevel) {
958 	MyInit = TRUE;
959 	if (MyFD >= 0) {
960@@ -146,6 +150,18 @@
961 	_nc_tracing = tracelevel;
962 	_tracef("tracelevel=%#x", tracelevel);
963     }
964+#else
965+    (void) tracelevel;
966+    result = 0;
967+#endif
968+    return result;
969+}
970+
971+#if defined(TRACE)
972+NCURSES_EXPORT(void)
973+trace(const unsigned int tracelevel)
974+{
975+    curses_trace(tracelevel);
976 }
977
978 static void
979Index: package/debian-mingw/changelog
980--- ncurses-6.1-20191130+/package/debian-mingw/changelog	2019-11-30 14:52:31.000000000 +0000
981+++ ncurses-6.1-20191207/package/debian-mingw/changelog	2019-12-07 10:19:49.000000000 +0000
982@@ -1,8 +1,8 @@
983-ncurses6 (6.1+20191130) unstable; urgency=low
984+ncurses6 (6.1+20191207) unstable; urgency=low
985
986   * latest weekly patch
987
988- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 30 Nov 2019 09:52:31 -0500
989+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 07 Dec 2019 05:19:49 -0500
990
991 ncurses6 (5.9-20131005) unstable; urgency=low
992
993Index: package/debian-mingw/compat
994--- ncurses-6.1-20191130+/package/debian-mingw/compat	2018-01-13 20:21:09.000000000 +0000
995+++ ncurses-6.1-20191207/package/debian-mingw/compat	2019-12-07 23:33:23.000000000 +0000
996@@ -1 +1 @@
997-7
998+9
999Index: package/debian-mingw64/changelog
1000--- ncurses-6.1-20191130+/package/debian-mingw64/changelog	2019-11-30 14:52:31.000000000 +0000
1001+++ ncurses-6.1-20191207/package/debian-mingw64/changelog	2019-12-07 10:19:49.000000000 +0000
1002@@ -1,8 +1,8 @@
1003-ncurses6 (6.1+20191130) unstable; urgency=low
1004+ncurses6 (6.1+20191207) unstable; urgency=low
1005
1006   * latest weekly patch
1007
1008- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 30 Nov 2019 09:52:31 -0500
1009+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 07 Dec 2019 05:19:49 -0500
1010
1011 ncurses6 (5.9-20131005) unstable; urgency=low
1012
1013Index: package/debian-mingw64/compat
1014--- ncurses-6.1-20191130+/package/debian-mingw64/compat	2018-01-13 20:21:09.000000000 +0000
1015+++ ncurses-6.1-20191207/package/debian-mingw64/compat	2019-12-07 23:33:23.000000000 +0000
1016@@ -1 +1 @@
1017-7
1018+9
1019Index: package/debian/changelog
1020--- ncurses-6.1-20191130+/package/debian/changelog	2019-11-30 14:52:31.000000000 +0000
1021+++ ncurses-6.1-20191207/package/debian/changelog	2019-12-07 10:19:49.000000000 +0000
1022@@ -1,8 +1,8 @@
1023-ncurses6 (6.1+20191130) unstable; urgency=low
1024+ncurses6 (6.1+20191207) unstable; urgency=low
1025
1026   * latest weekly patch
1027
1028- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 30 Nov 2019 09:52:31 -0500
1029+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 07 Dec 2019 05:19:49 -0500
1030
1031 ncurses6 (5.9-20120608) unstable; urgency=low
1032
1033Index: package/debian/compat
1034--- ncurses-6.1-20191130+/package/debian/compat	2018-01-13 20:21:09.000000000 +0000
1035+++ ncurses-6.1-20191207/package/debian/compat	2019-12-07 23:33:23.000000000 +0000
1036@@ -1 +1 @@
1037-7
1038+9
1039Index: package/mingw-ncurses.nsi
1040Prereq:  1.363
1041--- ncurses-6.1-20191130+/package/mingw-ncurses.nsi	2019-11-30 14:52:31.000000000 +0000
1042+++ ncurses-6.1-20191207/package/mingw-ncurses.nsi	2019-12-07 10:19:49.000000000 +0000
1043@@ -1,4 +1,4 @@
1044-; $Id: mingw-ncurses.nsi,v 1.363 2019/11/30 14:52:31 tom Exp $
1045+; $Id: mingw-ncurses.nsi,v 1.364 2019/12/07 10:19:49 tom Exp $
1046
1047 ; TODO add examples
1048 ; TODO bump ABI to 6
1049@@ -10,7 +10,7 @@
1050 !define VERSION_MAJOR "6"
1051 !define VERSION_MINOR "1"
1052 !define VERSION_YYYY  "2019"
1053-!define VERSION_MMDD  "1130"
1054+!define VERSION_MMDD  "1207"
1055 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
1056
1057 !define MY_ABI   "5"
1058Index: package/mingw-ncurses.spec
1059--- ncurses-6.1-20191130+/package/mingw-ncurses.spec	2019-11-30 14:52:31.000000000 +0000
1060+++ ncurses-6.1-20191207/package/mingw-ncurses.spec	2019-12-07 10:19:49.000000000 +0000
1061@@ -3,7 +3,7 @@
1062 Summary: shared libraries for terminal handling
1063 Name: mingw32-ncurses6
1064 Version: 6.1
1065-Release: 20191130
1066+Release: 20191207
1067 License: X11
1068 Group: Development/Libraries
1069 Source: ncurses-%{version}-%{release}.tgz
1070Index: package/ncurses.map
1071Prereq:  1.47
1072--- ncurses-6.1-20191130+/package/ncurses.map	2019-05-04 22:35:46.000000000 +0000
1073+++ ncurses-6.1-20191207/package/ncurses.map	2019-12-07 18:03:20.000000000 +0000
1074@@ -1,4 +1,4 @@
1075-# $Id: ncurses.map,v 1.47 2019/05/04 22:35:46 tom Exp $
1076+# $Id: ncurses.map,v 1.48 2019/12/07 18:03:20 tom Exp $
1077 # script for shared library symbol-versioning using ld
1078 #
1079 # This file was generated by ncu-mapsyms
1080@@ -1198,6 +1198,7 @@
1081 		_nc_find_user_entry;
1082 		_nc_fmt_funcptr;
1083 		_nc_wacs_width;
1084+		curses_trace;
1085 	local:
1086 		_*;
1087 } NCURSES_TINFO_6.1.20171230;
1088Index: package/ncurses.spec
1089--- ncurses-6.1-20191130+/package/ncurses.spec	2019-11-30 14:52:31.000000000 +0000
1090+++ ncurses-6.1-20191207/package/ncurses.spec	2019-12-07 10:19:49.000000000 +0000
1091@@ -1,7 +1,7 @@
1092 Summary: shared libraries for terminal handling
1093 Name: ncurses6
1094 Version: 6.1
1095-Release: 20191130
1096+Release: 20191207
1097 License: X11
1098 Group: Development/Libraries
1099 Source: ncurses-%{version}-%{release}.tgz
1100Index: package/ncurses.sym
1101Prereq:  1.33
1102--- ncurses-6.1-20191130+/package/ncurses.sym	2019-05-04 21:54:44.000000000 +0000
1103+++ ncurses-6.1-20191207/package/ncurses.sym	2019-12-07 18:03:20.000000000 +0000
1104@@ -1,4 +1,4 @@
1105-# $Id: ncurses.sym,v 1.33 2019/05/04 21:54:44 tom Exp $
1106+# $Id: ncurses.sym,v 1.34 2019/12/07 18:03:20 tom Exp $
1107 # script for shared library symbol-visibility using libtool
1108 #
1109 # This file was generated by ncu-mapsyms
1110@@ -295,6 +295,7 @@
1111 curs_set
1112 curs_set_sp
1113 curscr
1114+curses_trace
1115 curses_version
1116 data_ahead
1117 data_behind
1118Index: package/ncursest.map
1119Prereq:  1.45
1120--- ncurses-6.1-20191130+/package/ncursest.map	2019-05-04 22:36:26.000000000 +0000
1121+++ ncurses-6.1-20191207/package/ncursest.map	2019-12-07 18:03:20.000000000 +0000
1122@@ -1,4 +1,4 @@
1123-# $Id: ncursest.map,v 1.45 2019/05/04 22:36:26 tom Exp $
1124+# $Id: ncursest.map,v 1.46 2019/12/07 18:03:20 tom Exp $
1125 # script for shared library symbol-versioning using ld
1126 #
1127 # This file was generated by ncu-mapsyms
1128@@ -483,6 +483,7 @@
1129 		_nc_find_user_entry;
1130 		_nc_fmt_funcptr;
1131 		_nc_wacs_width;
1132+		curses_trace;
1133 	local:
1134 		_*;
1135 } NCURSES_TINFO_6.1.20171230;
1136Index: package/ncursest.spec
1137--- ncurses-6.1-20191130+/package/ncursest.spec	2019-11-30 14:52:31.000000000 +0000
1138+++ ncurses-6.1-20191207/package/ncursest.spec	2019-12-07 10:19:49.000000000 +0000
1139@@ -1,7 +1,7 @@
1140 Summary: Curses library with POSIX thread support.
1141 Name: ncursest6
1142 Version: 6.1
1143-Release: 20191130
1144+Release: 20191207
1145 License: X11
1146 Group: Development/Libraries
1147 Source: ncurses-%{version}-%{release}.tgz
1148Index: package/ncursest.sym
1149Prereq:  1.37
1150--- ncurses-6.1-20191130+/package/ncursest.sym	2019-05-04 22:29:26.000000000 +0000
1151+++ ncurses-6.1-20191207/package/ncursest.sym	2019-12-07 18:03:20.000000000 +0000
1152@@ -1,4 +1,4 @@
1153-# $Id: ncursest.sym,v 1.37 2019/05/04 22:29:26 tom Exp $
1154+# $Id: ncursest.sym,v 1.38 2019/12/07 18:03:20 tom Exp $
1155 # script for shared library symbol-visibility using libtool
1156 #
1157 # This file was generated by ncu-mapsyms
1158@@ -304,6 +304,7 @@
1159 current_item
1160 curs_set
1161 curs_set_sp
1162+curses_trace
1163 curses_version
1164 data_ahead
1165 data_behind
1166Index: package/ncursestw.map
1167Prereq:  1.47
1168--- ncurses-6.1-20191130+/package/ncursestw.map	2019-05-04 22:36:56.000000000 +0000
1169+++ ncurses-6.1-20191207/package/ncursestw.map	2019-12-07 18:03:20.000000000 +0000
1170@@ -1,4 +1,4 @@
1171-# $Id: ncursestw.map,v 1.47 2019/05/04 22:36:56 tom Exp $
1172+# $Id: ncursestw.map,v 1.48 2019/12/07 18:03:20 tom Exp $
1173 # script for shared library symbol-versioning using ld
1174 #
1175 # This file was generated by ncu-mapsyms
1176@@ -489,6 +489,7 @@
1177 		_nc_find_user_entry;
1178 		_nc_fmt_funcptr;
1179 		_nc_wacs_width;
1180+		curses_trace;
1181 	local:
1182 		_*;
1183 } NCURSES_TINFO_6.1.20171230;
1184Index: package/ncursestw.sym
1185Prereq:  1.36
1186--- ncurses-6.1-20191130+/package/ncursestw.sym	2019-05-04 22:29:12.000000000 +0000
1187+++ ncurses-6.1-20191207/package/ncursestw.sym	2019-12-07 18:03:20.000000000 +0000
1188@@ -1,4 +1,4 @@
1189-# $Id: ncursestw.sym,v 1.36 2019/05/04 22:29:12 tom Exp $
1190+# $Id: ncursestw.sym,v 1.37 2019/12/07 18:03:20 tom Exp $
1191 # script for shared library symbol-visibility using libtool
1192 #
1193 # This file was generated by ncu-mapsyms
1194@@ -320,6 +320,7 @@
1195 current_item
1196 curs_set
1197 curs_set_sp
1198+curses_trace
1199 curses_version
1200 data_ahead
1201 data_behind
1202Index: package/ncursesw.map
1203Prereq:  1.50
1204--- ncurses-6.1-20191130+/package/ncursesw.map	2019-05-04 22:37:14.000000000 +0000
1205+++ ncurses-6.1-20191207/package/ncursesw.map	2019-12-07 18:03:20.000000000 +0000
1206@@ -1,4 +1,4 @@
1207-# $Id: ncursesw.map,v 1.50 2019/05/04 22:37:14 tom Exp $
1208+# $Id: ncursesw.map,v 1.51 2019/12/07 18:03:20 tom Exp $
1209 # script for shared library symbol-versioning using ld
1210 #
1211 # This file was generated by ncu-mapsyms
1212@@ -483,6 +483,7 @@
1213 		_nc_find_user_entry;
1214 		_nc_fmt_funcptr;
1215 		_nc_wacs_width;
1216+		curses_trace;
1217 	local:
1218 		_*;
1219 } NCURSES_TINFO_6.1.20171230;
1220Index: package/ncursesw.sym
1221Prereq:  1.35
1222--- ncurses-6.1-20191130+/package/ncursesw.sym	2019-05-04 21:54:38.000000000 +0000
1223+++ ncurses-6.1-20191207/package/ncursesw.sym	2019-12-07 18:03:20.000000000 +0000
1224@@ -1,4 +1,4 @@
1225-# $Id: ncursesw.sym,v 1.35 2019/05/04 21:54:38 tom Exp $
1226+# $Id: ncursesw.sym,v 1.36 2019/12/07 18:03:20 tom Exp $
1227 # script for shared library symbol-visibility using libtool
1228 #
1229 # This file was generated by ncu-mapsyms
1230@@ -308,6 +308,7 @@
1231 curs_set
1232 curs_set_sp
1233 curscr
1234+curses_trace
1235 curses_version
1236 data_ahead
1237 data_behind
1238Index: test/demo_menus.c
1239Prereq:  1.69
1240--- ncurses-6.1-20191130+/test/demo_menus.c	2019-08-24 21:41:50.000000000 +0000
1241+++ ncurses-6.1-20191207/test/demo_menus.c	2019-12-07 18:06:12.000000000 +0000
1242@@ -26,7 +26,7 @@
1243  * authorization.                                                           *
1244  ****************************************************************************/
1245 /*
1246- * $Id: demo_menus.c,v 1.69 2019/08/24 21:41:50 tom Exp $
1247+ * $Id: demo_menus.c,v 1.70 2019/12/07 18:06:12 tom Exp $
1248  *
1249  * Demonstrate a variety of functions from the menu library.
1250  * Thomas Dickey - 2005/4/9
1251@@ -139,7 +139,7 @@
1252 	} else {
1253 	    _nc_tracing = save_trace;
1254 	}
1255-	trace(_nc_tracing);
1256+	curses_trace(_nc_tracing);
1257 	if (_nc_tracing)
1258 	    Trace(("TOGGLE-TRACING ON"));
1259     }
1260@@ -631,7 +631,7 @@
1261 		    newtrace |= td->mask;
1262 		}
1263 	    }
1264-	    trace(newtrace);
1265+	    curses_trace(newtrace);
1266 	    Trace(("trace level interactively set to %s", tracetrace(_nc_tracing)));
1267
1268 	    MvWPrintw(status, 1, 0,
1269@@ -1016,7 +1016,7 @@
1270 #endif /* HAVE_RIPOFFLINE */
1271 #ifdef TRACE
1272 	case 't':
1273-	    trace((unsigned) strtoul(optarg, 0, 0));
1274+	    curses_trace((unsigned) strtoul(optarg, 0, 0));
1275 	    break;
1276 #endif
1277 	default:
1278Index: test/hashtest.c
1279Prereq:  1.34
1280--- ncurses-6.1-20191130+/test/hashtest.c	2017-09-30 15:42:53.000000000 +0000
1281+++ ncurses-6.1-20191207/test/hashtest.c	2019-12-07 18:07:04.000000000 +0000
1282@@ -1,5 +1,5 @@
1283 /****************************************************************************
1284- * Copyright (c) 1998-2013,2017 Free Software Foundation, Inc.              *
1285+ * Copyright (c) 1998-2017,2019 Free Software Foundation, Inc.              *
1286  *                                                                          *
1287  * Permission is hereby granted, free of charge, to any person obtaining a  *
1288  * copy of this software and associated documentation files (the            *
1289@@ -30,7 +30,7 @@
1290  *
1291  * Generate timing statistics for vertical-motion optimization.
1292  *
1293- * $Id: hashtest.c,v 1.34 2017/09/30 15:42:53 tom Exp $
1294+ * $Id: hashtest.c,v 1.35 2019/12/07 18:07:04 tom Exp $
1295  */
1296
1297 #include <test.priv.h>
1298@@ -222,7 +222,7 @@
1299 	test_optimize = TRUE;
1300     }
1301 #if USE_TRACE
1302-    trace(TRACE_TIMES);
1303+    curses_trace(TRACE_TIMES);
1304 #endif
1305
1306     InitAndCatch(initscr(), finish);
1307Index: test/lrtest.c
1308Prereq:  1.24
1309--- ncurses-6.1-20191130+/test/lrtest.c	2017-09-04 11:28:19.000000000 +0000
1310+++ ncurses-6.1-20191207/test/lrtest.c	2019-12-07 18:07:04.000000000 +0000
1311@@ -1,5 +1,5 @@
1312 /****************************************************************************
1313- * Copyright (c) 1998-2010,2017 Free Software Foundation, Inc.              *
1314+ * Copyright (c) 1998-2017,2019 Free Software Foundation, Inc.              *
1315  *                                                                          *
1316  * Permission is hereby granted, free of charge, to any person obtaining a  *
1317  * copy of this software and associated documentation files (the            *
1318@@ -34,7 +34,7 @@
1319  * This can't be part of the ncurses test-program, because ncurses rips off the
1320  * bottom line to do labels.
1321  *
1322- * $Id: lrtest.c,v 1.24 2017/09/04 11:28:19 tom Exp $
1323+ * $Id: lrtest.c,v 1.25 2019/12/07 18:07:04 tom Exp $
1324  */
1325
1326 #include <test.priv.h>
1327@@ -148,9 +148,9 @@
1328 		nodelay(stdscr, TRUE);
1329 #ifdef TRACE
1330 	    else if (ch == 'T')
1331-		trace(0);
1332+		curses_trace(0);
1333 	    else if (ch == 't')
1334-		trace(TRACE_CALLS | TRACE_ICALLS | TRACE_UPDATE);
1335+		curses_trace(TRACE_CALLS | TRACE_ICALLS | TRACE_UPDATE);
1336 #endif
1337 #ifdef KEY_RESIZE
1338 	    else if (ch == KEY_RESIZE) {
1339Index: test/ncurses.c
1340Prereq:  1.519
1341--- ncurses-6.1-20191130+/test/ncurses.c	2019-09-22 19:12:40.000000000 +0000
1342+++ ncurses-6.1-20191207/test/ncurses.c	2019-12-07 19:04:52.000000000 +0000
1343@@ -40,7 +40,7 @@
1344    Author: Eric S. Raymond <esr@snark.thyrsus.com> 1993
1345            Thomas E. Dickey (beginning revision 1.27 in 1996).
1346
1347-$Id: ncurses.c,v 1.519 2019/09/22 19:12:40 tom Exp $
1348+$Id: ncurses.c,v 1.520 2019/12/07 19:04:52 tom Exp $
1349
1350 ***************************************************************************/
1351
1352@@ -210,7 +210,7 @@
1353 	} else {
1354 	    _nc_tracing = save_trace;
1355 	}
1356-	trace(_nc_tracing);
1357+	curses_trace(_nc_tracing);
1358 	if (_nc_tracing)
1359 	    Trace(("TOGGLE-TRACING ON"));
1360     }
1361@@ -344,7 +344,7 @@
1362 	} else {
1363 	    _nc_tracing = save_trace;
1364 	}
1365-	trace(_nc_tracing);
1366+	curses_trace(_nc_tracing);
1367 	if (_nc_tracing)
1368 	    Trace(("TOGGLE-TRACING ON"));
1369     }
1370@@ -3734,7 +3734,6 @@
1371     MvAddCh(LINES / 2, 0,        colored_chtype(ACS_LTEE,  attr, pair));
1372     MvAddCh(LINES / 2, COLS - 1, colored_chtype(ACS_RTEE,  attr, pair));
1373     /* *INDENT-ON* */
1374-
1375 }
1376
1377 static int
1378@@ -4282,7 +4281,6 @@
1379     (void) mvadd_wch(LINES / 2,   0,        MERGE_ATTR(0, WACS_LTEE));
1380     (void) mvadd_wch(LINES / 2,   COLS - 1, MERGE_ATTR(0, WACS_RTEE));
1381     /* *INDENT-ON* */
1382-
1383 }
1384
1385 #undef MERGE_ATTR
1386@@ -4355,7 +4353,6 @@
1387     n = SHOW_UTF8(n, "WACS_S7",		"\342\216\274");
1388     (void) SHOW_UTF8(n, "WACS_S9",	"\342\216\275");
1389     /* *INDENT-ON* */
1390-
1391 }
1392
1393 /* display the wide-ACS character set */
1394@@ -6345,7 +6342,7 @@
1395     for (ip = menu_items(m); *ip; ip++)
1396 	if (item_value(*ip))
1397 	    newtrace |= t_tbl[item_index(*ip)].mask;
1398-    trace(newtrace);
1399+    curses_trace(newtrace);
1400     Trace(("trace level interactively set to %s", tracetrace(_nc_tracing)));
1401
1402     MvPrintw(LINES - 2, 0,
1403@@ -7992,10 +7989,10 @@
1404 #ifdef TRACE
1405     /* enable debugging */
1406 #if !USE_LIBMENU
1407-    trace(save_trace);
1408+    curses_trace(save_trace);
1409 #else
1410     if (!isatty(fileno(stdin)))
1411-	trace(save_trace);
1412+	curses_trace(save_trace);
1413 #endif /* USE_LIBMENU */
1414 #endif /* TRACE */
1415
1416Index: test/package/debian-mingw/compat
1417--- ncurses-6.1-20191130+/test/package/debian-mingw/compat	2018-01-13 20:21:09.000000000 +0000
1418+++ ncurses-6.1-20191207/test/package/debian-mingw/compat	2019-12-07 23:32:53.000000000 +0000
1419@@ -1 +1 @@
1420-7
1421+9
1422Index: test/package/debian-mingw/control
1423--- ncurses-6.1-20191130+/test/package/debian-mingw/control	2018-01-01 11:55:21.000000000 +0000
1424+++ ncurses-6.1-20191207/test/package/debian-mingw/control	2019-12-07 23:35:21.000000000 +0000
1425@@ -9,7 +9,7 @@
1426 Package: mingw32-ncurses-examples
1427 Architecture: any
1428 Depends: ${shlibs:Depends}, ${misc:Depends}
1429-Description: ncurses-examples - example/test programs from ncurses
1430+Description: example/test programs from ncurses
1431  These are the example/test programs from the ncurses distribution.
1432  .
1433  This package is used for testing ABI 6 with the MinGW 32-bit port.
1434Index: test/package/debian-mingw64/compat
1435--- ncurses-6.1-20191130+/test/package/debian-mingw64/compat	2018-01-13 20:21:09.000000000 +0000
1436+++ ncurses-6.1-20191207/test/package/debian-mingw64/compat	2019-12-07 23:32:53.000000000 +0000
1437@@ -1 +1 @@
1438-7
1439+9
1440Index: test/package/debian-mingw64/control
1441--- ncurses-6.1-20191130+/test/package/debian-mingw64/control	2018-01-01 11:55:10.000000000 +0000
1442+++ ncurses-6.1-20191207/test/package/debian-mingw64/control	2019-12-07 23:35:21.000000000 +0000
1443@@ -9,7 +9,7 @@
1444 Package: mingw64-ncurses-examples
1445 Architecture: any
1446 Depends: ${shlibs:Depends}, ${misc:Depends}
1447-Description: ncurses-examples - example/test programs from ncurses
1448+Description: example/test programs from ncurses
1449  These are the example/test programs from the ncurses distribution.
1450  .
1451  This package is used for testing ABI 6 with the MinGW 64-bit port.
1452Index: test/package/debian/compat
1453--- ncurses-6.1-20191130+/test/package/debian/compat	2018-01-13 20:21:09.000000000 +0000
1454+++ ncurses-6.1-20191207/test/package/debian/compat	2019-12-07 23:32:53.000000000 +0000
1455@@ -1 +1 @@
1456-7
1457+9
1458Index: test/package/debian/control
1459--- ncurses-6.1-20191130+/test/package/debian/control	2018-01-01 11:53:23.000000000 +0000
1460+++ ncurses-6.1-20191207/test/package/debian/control	2019-12-07 23:35:34.000000000 +0000
1461@@ -9,7 +9,7 @@
1462 Package: ncurses-examples
1463 Architecture: any
1464 Depends: ${shlibs:Depends}, ${misc:Depends}
1465-Description: ncurses-examples - example/test programs from ncurses
1466+Description: example/test programs from ncurses
1467  These are the example/test programs from the ncurses distribution.
1468  .
1469  This package installs in "bin/ncurses-examples" to avoid conflict with other
1470@@ -18,7 +18,7 @@
1471 Package: ncursest-examples
1472 Architecture: any
1473 Depends: ${shlibs:Depends}, ${misc:Depends}
1474-Description: ncurses-examples - example/test programs from ncurses
1475+Description: example/test programs from ncurses
1476  These are the example/test programs from the ncurses distribution, using
1477  the thread configuration.
1478  .
1479Index: test/padview.c
1480Prereq:  1.14
1481--- ncurses-6.1-20191130+/test/padview.c	2019-07-13 20:41:47.000000000 +0000
1482+++ ncurses-6.1-20191207/test/padview.c	2019-12-07 18:06:12.000000000 +0000
1483@@ -28,7 +28,7 @@
1484 /*
1485  * clone of view.c, using pads
1486  *
1487- * $Id: padview.c,v 1.14 2019/07/13 20:41:47 tom Exp $
1488+ * $Id: padview.c,v 1.15 2019/12/07 18:06:12 tom Exp $
1489  */
1490
1491 #include <test.priv.h>
1492@@ -324,11 +324,11 @@
1493 		int tvalue = (int) strtol(optarg, &next, 0);
1494 		if (tvalue < 0 || (next != 0 && *next != 0))
1495 		    usage();
1496-		trace((unsigned) tvalue);
1497+		curses_trace((unsigned) tvalue);
1498 	    }
1499 	    break;
1500 	case 't':
1501-	    trace(TRACE_CALLS);
1502+	    curses_trace(TRACE_CALLS);
1503 	    break;
1504 #endif
1505 	default:
1506Index: test/test.priv.h
1507Prereq:  1.182
1508--- ncurses-6.1-20191130+/test/test.priv.h	2019-04-20 20:15:39.000000000 +0000
1509+++ ncurses-6.1-20191207/test/test.priv.h	2019-12-07 19:03:20.000000000 +0000
1510@@ -29,7 +29,7 @@
1511 /****************************************************************************
1512  *  Author: Thomas E. Dickey                    1996-on                     *
1513  ****************************************************************************/
1514-/* $Id: test.priv.h,v 1.182 2019/04/20 20:15:39 tom Exp $ */
1515+/* $Id: test.priv.h,v 1.183 2019/12/07 19:03:20 tom Exp $ */
1516
1517 #ifndef __TEST_PRIV_H
1518 #define __TEST_PRIV_H 1
1519@@ -976,9 +976,9 @@
1520 #endif
1521
1522 #if !HAVE_STRSTR
1523-extern char * _nc_strstr (const char *, const char *);
1524+extern char *_nc_strstr(const char *, const char *);
1525 #define strstr(a,b) _nc_strstr((a),(b))
1526-#endif	/* !HAVE_STRSTR */
1527+#endif /* !HAVE_STRSTR */
1528
1529 /* Use this to quiet gcc's -Wwrite-strings warnings, but accommodate SVr4
1530  * curses which doesn't have const parameters declared (so far) in the places
1531@@ -1129,7 +1129,7 @@
1532 	if ((_nc_tracing & TRACE_MAXIMUM) == 0) { \
1533 	    int t = _nc_getenv_num("NCURSES_TRACE"); \
1534 	    if (t >= 0) \
1535-		trace((unsigned) t); \
1536+		curses_trace((unsigned) t); \
1537 	}
1538 extern unsigned _nc_tracing;
1539 extern int _nc_getenv_num(const char *);
1540Index: test/testcurs.c
1541Prereq:  1.53
1542--- ncurses-6.1-20191130+/test/testcurs.c	2017-12-23 21:38:26.000000000 +0000
1543+++ ncurses-6.1-20191207/test/testcurs.c	2019-12-07 18:06:12.000000000 +0000
1544@@ -6,7 +6,7 @@
1545  *  wrs(5/28/93) -- modified to be consistent (perform identically) with either
1546  *                  PDCurses or under Unix System V, R4
1547  *
1548- * $Id: testcurs.c,v 1.53 2017/12/23 21:38:26 tom Exp $
1549+ * $Id: testcurs.c,v 1.54 2019/12/07 18:06:12 tom Exp $
1550  */
1551
1552 #include <test.priv.h>
1553@@ -59,7 +59,7 @@
1554     PDC_debug("initTest called\n");
1555 #endif
1556 #ifdef TRACE
1557-    trace(TRACE_MAXIMUM);
1558+    curses_trace(TRACE_MAXIMUM);
1559 #endif
1560     initscr();
1561 #ifdef PDCDEBUG
1562Index: test/testscanw.c
1563Prereq:  1.11
1564--- ncurses-6.1-20191130+/test/testscanw.c	2006-04-01 19:08:03.000000000 +0000
1565+++ ncurses-6.1-20191207/test/testscanw.c	2019-12-07 18:07:04.000000000 +0000
1566@@ -1,5 +1,5 @@
1567 /****************************************************************************
1568- * Copyright (c) 1998-2002,2006 Free Software Foundation, Inc.              *
1569+ * Copyright (c) 1998-2006,2019 Free Software Foundation, Inc.              *
1570  *                                                                          *
1571  * Permission is hereby granted, free of charge, to any person obtaining a  *
1572  * copy of this software and associated documentation files (the            *
1573@@ -29,7 +29,7 @@
1574  * Date:  1997/03/17
1575  * From:  bayern@morpheus.cis.yale.edu
1576  *
1577- * $Id: testscanw.c,v 1.11 2006/04/01 19:08:03 tom Exp $
1578+ * $Id: testscanw.c,v 1.12 2019/12/07 18:07:04 tom Exp $
1579  */
1580 #include <test.priv.h>
1581
1582@@ -47,7 +47,7 @@
1583     echo();
1584
1585 #if 0
1586-    trace(TRACE_UPDATE | TRACE_CALLS);
1587+    curses_trace(TRACE_UPDATE | TRACE_CALLS);
1588 #endif
1589     while (argc > 1) {
1590 	if (isdigit(UChar(*argv[1])))
1591Index: test/view.c
1592Prereq:  1.136
1593--- ncurses-6.1-20191130+/test/view.c	2019-01-27 00:52:06.000000000 +0000
1594+++ ncurses-6.1-20191207/test/view.c	2019-12-07 19:03:07.000000000 +0000
1595@@ -51,7 +51,7 @@
1596  * scroll operation worked, and the refresh() code only had to do a
1597  * partial repaint.
1598  *
1599- * $Id: view.c,v 1.136 2019/01/27 00:52:06 tom Exp $
1600+ * $Id: view.c,v 1.137 2019/12/07 19:03:07 tom Exp $
1601  */
1602
1603 #include <test.priv.h>
1604@@ -88,7 +88,7 @@
1605 }
1606
1607 static int
1608-ch_len(NCURSES_CH_T * src)
1609+ch_len(NCURSES_CH_T *src)
1610 {
1611     int result = 0;
1612 #if USE_WIDEC_SUPPORT
1613@@ -299,11 +299,13 @@
1614     }
1615     width = (width + 1) * 5;
1616     my_win = newwin(2, width, 0, 0);
1617-    if (my_win == 0)
1618+    if (my_win == 0) {
1619 	failed("cannot allocate temporary window");
1620+    }
1621
1622-    if ((vec_lines = typeCalloc(NCURSES_CH_T *, (size_t) num_lines + 2)) == 0)
1623+    if ((vec_lines = typeCalloc(NCURSES_CH_T *, (size_t) num_lines + 2)) == 0) {
1624 	failed("cannot allocate line-vector #2");
1625+    }
1626
1627     /*
1628      * Use the curses library for rendering, including tab-conversion.  This
1629@@ -348,8 +350,9 @@
1630 	    x = width - 1;
1631 	wmove(my_win, 0, 0);
1632 	/* "x + 1" works with standard curses; some implementations are buggy */
1633-	if ((vec_lines[k] = typeCalloc(NCURSES_CH_T, x + width + 1)) == 0)
1634+	if ((vec_lines[k] = typeCalloc(NCURSES_CH_T, x + width + 1)) == 0) {
1635 	    failed("cannot allocate line-vector #3");
1636+	}
1637 #if USE_WIDEC_SUPPORT
1638 	win_wchnstr(my_win, vec_lines[k], x);
1639 #else
1640@@ -450,11 +453,11 @@
1641 		int tvalue = (int) strtol(optarg, &next, 0);
1642 		if (tvalue < 0 || (next != 0 && *next != 0))
1643 		    usage();
1644-		trace((unsigned) tvalue);
1645+		curses_trace((unsigned) tvalue);
1646 	    }
1647 	    break;
1648 	case 't':
1649-	    trace(TRACE_CALLS);
1650+	    curses_trace(TRACE_CALLS);
1651 	    break;
1652 #endif
1653 	default:
1654Index: test/worm.c
1655Prereq:  1.79
1656--- ncurses-6.1-20191130+/test/worm.c	2018-07-21 21:40:00.000000000 +0000
1657+++ ncurses-6.1-20191207/test/worm.c	2019-12-07 19:04:09.000000000 +0000
1658@@ -1,5 +1,5 @@
1659 /****************************************************************************
1660- * Copyright (c) 1998-2017,2018 Free Software Foundation, Inc.              *
1661+ * Copyright (c) 1998-2018,2019 Free Software Foundation, Inc.              *
1662  *                                                                          *
1663  * Permission is hereby granted, free of charge, to any person obtaining a  *
1664  * copy of this software and associated documentation files (the            *
1665@@ -52,7 +52,7 @@
1666   traces will be dumped.  The program stops and waits for one character of
1667   input at the beginning and end of the interval.
1668
1669-  $Id: worm.c,v 1.79 2018/07/21 21:40:00 tom Exp $
1670+  $Id: worm.c,v 1.80 2019/12/07 19:04:09 tom Exp $
1671 */
1672
1673 #include <test.priv.h>
1674@@ -608,10 +608,10 @@
1675 #ifdef TRACE
1676 	    if (trace_start || trace_end) {
1677 		if (generation == trace_start) {
1678-		    trace(TRACE_CALLS);
1679+		    curses_trace(TRACE_CALLS);
1680 		    get_input();
1681 		} else if (generation == trace_end) {
1682-		    trace(0);
1683+		    curses_trace(0);
1684 		    get_input();
1685 		}
1686
1687