ncurses 6.2 - patch 20200314
authorThomas E. Dickey <dickey@invisible-island.net>
Sun, 15 Mar 2020 01:36:38 +0000 (01:36 +0000)
committerThomas E. Dickey <dickey@invisible-island.net>
Sun, 15 Mar 2020 01:36:38 +0000 (01:36 +0000)
+ add history note to curs_scanw.3x for <stdarg.h> and <varargs.h>
+ add history note to curs_printw.3x for <stdarg.h> and <varargs.h>
+ add portability note to ncurses.3x regarding <stdarg.h>

31 files changed:
NEWS
VERSION
dist.mk
doc/html/man/adacurses6-config.1.html
doc/html/man/captoinfo.1m.html
doc/html/man/clear.1.html
doc/html/man/curs_printw.3x.html
doc/html/man/curs_scanw.3x.html
doc/html/man/form.3x.html
doc/html/man/infocmp.1m.html
doc/html/man/infotocap.1m.html
doc/html/man/menu.3x.html
doc/html/man/ncurses.3x.html
doc/html/man/ncurses6-config.1.html
doc/html/man/panel.3x.html
doc/html/man/tabs.1.html
doc/html/man/terminfo.5.html
doc/html/man/tic.1m.html
doc/html/man/toe.1m.html
doc/html/man/tput.1.html
doc/html/man/tset.1.html
man/curs_printw.3x
man/curs_scanw.3x
man/ncurses.3x
package/debian-mingw/changelog
package/debian-mingw64/changelog
package/debian/changelog
package/mingw-ncurses.nsi
package/mingw-ncurses.spec
package/ncurses.spec
package/ncursest.spec

diff --git a/NEWS b/NEWS
index b2b4b3f90533692081e48593f3771dd79ca12131..353d1582ae6a1ad4a953d6eb969fda737dadd01e 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -26,7 +26,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: NEWS,v 1.3461 2020/03/08 14:28:23 tom Exp $
+-- $Id: NEWS,v 1.3463 2020/03/15 00:15:32 tom Exp $
 -------------------------------------------------------------------------------
 
 This is a log of changes that ncurses has gone through since Zeyd started
@@ -46,6 +46,11 @@ See the AUTHORS file for the corresponding full names.
 Changes through 1.9.9e did not credit all contributions;
 it is not possible to add this information.
 
+20200314
+       + add history note to curs_scanw.3x for <stdarg.h> and <varargs.h>
+       + add history note to curs_printw.3x for <stdarg.h> and <varargs.h>
+       + add portability note to ncurses.3x regarding <stdarg.h>
+
 20200308
        + update copyright notices in test-packages.
        + modify tracemunch to guard against errors in its known_p1 table.
diff --git a/VERSION b/VERSION
index e15247a7c9fe69b764fa2ebe472ac3b01420e98e..efb469b9fcd742867b3afc5aa146df59ec89f626 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-5:0:10 6.2     20200308
+5:0:10 6.2     20200314
diff --git a/dist.mk b/dist.mk
index 64d46536f4a613933a9e8743d877f583db875a37..50d914e576ae1420b1f372a9a12001026b28e8d4 100644 (file)
--- a/dist.mk
+++ b/dist.mk
@@ -26,7 +26,7 @@
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
-# $Id: dist.mk,v 1.1340 2020/03/08 14:28:23 tom Exp $
+# $Id: dist.mk,v 1.1341 2020/03/14 15:30:00 tom Exp $
 # Makefile for creating ncurses distributions.
 #
 # This only needs to be used directly as a makefile by developers, but
@@ -38,7 +38,7 @@ SHELL = /bin/sh
 # These define the major/minor/patch versions of ncurses.
 NCURSES_MAJOR = 6
 NCURSES_MINOR = 2
-NCURSES_PATCH = 20200308
+NCURSES_PATCH = 20200314
 
 # We don't append the patch to the version, since this only applies to releases
 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
index 3a95cbd4541ddf5656fafa868e9517198654f4b2..537019d18141eaa8c510a2c8b2d2547fc51f79a2 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 
index efbb6b2798db5000388225f5e730e0f036ca0251..a637dd0a106559de322fdf0361f2b3be94a8d855 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <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>
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index f4e23ae60452f0582766856f289129a34e1600be..375bbfd836692aed6ee39d682246677aa148ddd8 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 
index c38fc4e3e6510153ecec045271900cd1dc2cb95f..cb50d7b7ee445b611ea6f9cecd54e49be8d34176 100644 (file)
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_printw.3x,v 1.25 2020/02/02 23:34:34 tom Exp @
+  * @Id: curs_printw.3x,v 1.26 2020/03/14 23:48:47 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
        the window pointer is null.
 
 
+</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+       While <STRONG>printw</STRONG> was implemented in 4BSD, it was unused until 4.2BSD (which
+       used it in games).  That early version of curses was before the ANSI  C
+       standard.   It  did not use &lt;varargs.h&gt;, though that was available.  In
+       1991 (a couple of years after SVr4 was generally available,  and  after
+       the  C  standard  was published), other developers updated the library,
+       using &lt;stdarg.h&gt; internally in 4.4BSD curses.  Even with this  improve-
+       ment, BSD curses did not use function prototypes (or even declare func-
+       tions) in the &lt;curses.h&gt; header until 1992.
+
+       SVr2 documented <STRONG>printw</STRONG>, <STRONG>wprintw</STRONG>  tersely  as  "printf  on  <EM>stdscr</EM>"  and
+       tersely as "printf on <EM>win</EM>", respectively.
+
+       SVr3  added  <STRONG>mvprintw</STRONG>,  and <STRONG>mvwprintw</STRONG>, with a three-line summary saying
+       that they were analogous to <STRONG>printf(3)</STRONG>, explaining that the string which
+       would be output from <STRONG>printf(3)</STRONG> would instead be output using <STRONG>waddstr</STRONG> on
+       the given window.  SVr3 also added <STRONG>vwprintw</STRONG>, saying that the third  pa-
+       rameter  is a <STRONG>va_list</STRONG>, defined in &lt;varargs.h&gt;, and referring the reader
+       to the manual pages for <EM>varargs</EM> and <EM>vprintf</EM> for detailed descriptions.
+
+       SVr4 added  no  new  variations  of  <STRONG>printw</STRONG>,  but  provided  for  using
+       &lt;varargs.h&gt; or &lt;stdarg.h&gt; to define the <STRONG>va_list</STRONG> type.
+
+       X/Open  Curses  added  <STRONG>vw_printw</STRONG>  to replace <STRONG>vwprintw</STRONG>, stating that its
+       <STRONG>va_list</STRONG> definition requires &lt;stdarg.h&gt;.
+
+
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       In  this implementation, <STRONG>vw_printw</STRONG> and <STRONG>vwprintw</STRONG> are equivalent, to sup-
+       In this implementation, <STRONG>vw_printw</STRONG> and <STRONG>vwprintw</STRONG> are equivalent, to  sup-
        port legacy applications.  However, the latter (<STRONG>vwprintw</STRONG>) is obsolete:
 
-       <STRONG>o</STRONG>   The XSI Curses standard, Issue 4 described  these  functions.   The
-           function  <STRONG>vwprintw</STRONG> is marked TO BE WITHDRAWN, and is to be replaced
+       <STRONG>o</STRONG>   The  XSI  Curses  standard, Issue 4 described these functions.  The
+           function <STRONG>vwprintw</STRONG> is marked TO BE WITHDRAWN, and is to be  replaced
            by a function <STRONG>vw_printw</STRONG> using the <STRONG>&lt;stdarg.h&gt;</STRONG> interface.
 
-       <STRONG>o</STRONG>   The Single Unix Specification, Version 2 states that <STRONG>vw_printw</STRONG>   is
-           preferred   to   <STRONG>vwprintw</STRONG>   since  the  latter  requires  including
-           <STRONG>&lt;varargs.h&gt;</STRONG>, which cannot be used in the same file  as  <STRONG>&lt;stdarg.h&gt;</STRONG>.
-           This  implementation  uses <STRONG>&lt;stdarg.h&gt;</STRONG> for both, because that header
+       <STRONG>o</STRONG>   The  Single Unix Specification, Version 2 states that <STRONG>vw_printw</STRONG>  is
+           preferred  to  <STRONG>vwprintw</STRONG>  since  the   latter   requires   including
+           <STRONG>&lt;varargs.h&gt;</STRONG>,  which  cannot be used in the same file as <STRONG>&lt;stdarg.h&gt;</STRONG>.
+           This implementation uses <STRONG>&lt;stdarg.h&gt;</STRONG> for both, because  that  header
            is included in <STRONG>&lt;curses.h</STRONG>&gt;.
 
-       <STRONG>o</STRONG>   X/Open Curses, Issue 5 (December 2007) marked <STRONG>vwprintw</STRONG> (along  with
+       <STRONG>o</STRONG>   X/Open  Curses, Issue 5 (December 2007) marked <STRONG>vwprintw</STRONG> (along with
            <STRONG>vwscanw</STRONG> and the termcap interface) as withdrawn.
 
 
 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
+<li><a href="#h2-HISTORY">HISTORY</a></li>
 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
 </ul>
index a7576669aded40016af653be64dc6e55d83fb88a..8bbd242fa1f061b80a84412bd22dd6e8a21b7e3e 100644 (file)
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_scanw.3x,v 1.26 2020/02/02 23:34:34 tom Exp @
+  * @Id: curs_scanw.3x,v 1.27 2020/03/15 00:14:30 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
        the window pointer is null.
 
 
+</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+       While  <STRONG>scanw</STRONG>  was implemented in 4BSD, none of the BSD releases used it
+       until 4.4BSD (in a game).  That early version of curses was before  the
+       ANSI  C  standard.   It did not use &lt;varargs.h&gt;, though that was avail-
+       able.  In 1991 (a couple of years after SVr4 was  generally  available,
+       and  after  the C standard was published), other developers updated the
+       library, using &lt;stdarg.h&gt; internally in 4.4BSD curses.  Even with  this
+       improvement,  BSD  curses  did  not  use  function  prototypes (or even
+       declare functions) in the &lt;curses.h&gt; header until 1992.
+
+       SVr2 documented <STRONG>scanw</STRONG>, <STRONG>wscanw</STRONG> tersely as  "scanf  through  <EM>stdscr</EM>"  and
+       tersely as "scanf through <EM>win</EM>", respectively.
+
+       SVr3 added <STRONG>mvscanw</STRONG>, and <STRONG>mvwscanw</STRONG>, with a three-line summary saying that
+       they were analogous to <STRONG>scanf(3)</STRONG>, explaining that the string which would
+       be  output  from  <STRONG>scanf(3)</STRONG> would instead be output using <STRONG>waddstr</STRONG> on the
+       given window.  SVr3 also added <STRONG>vwscanw</STRONG>, saying that the third parameter
+       is  a  <STRONG>va_list</STRONG>, defined in &lt;varargs.h&gt;, and referring the reader to the
+       manual  pages  for  <EM>varargs</EM>  and  <EM>vprintf</EM>  for  detailed  descriptions.
+       (Because the SVr3 documentation does not mention <EM>vscanf</EM>, that reference
+       to <EM>vprintf</EM> may not be an error).
+
+       SVr4  added  no  new  variations  of  <STRONG>scanw</STRONG>,  but  provided  for  using
+       &lt;varargs.h&gt; or &lt;stdarg.h&gt; to define the <STRONG>va_list</STRONG> type.
+
+       X/Open  Curses  added  <STRONG>vw_scanw</STRONG>  to  replace  <STRONG>vwscanw</STRONG>, stating that its
+       <STRONG>va_list</STRONG> definition requires &lt;stdarg.h&gt;.
+
+
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
        In this implementation, <STRONG>vw_scanw</STRONG> and <STRONG>vwscanw</STRONG> are equivalent, to support
        legacy applications.  However, the latter (<STRONG>vwscanw</STRONG>) is obsolete:
 
-       <STRONG>o</STRONG>   The XSI Curses standard, Issue 4 described these functions,  noting
-           that  the  function <STRONG>vwscanw</STRONG> is marked TO BE WITHDRAWN, and is to be
+       <STRONG>o</STRONG>   The  XSI Curses standard, Issue 4 described these functions, noting
+           that the function <STRONG>vwscanw</STRONG> is marked TO BE WITHDRAWN, and is  to  be
            replaced by a function <STRONG>vw_scanw</STRONG> using the <STRONG>&lt;stdarg.h&gt;</STRONG> interface.
 
-       <STRONG>o</STRONG>   The Single Unix Specification, Version 2 states that  <STRONG>vw_scanw</STRONG>   is
-           preferred   to   <STRONG>vwscanw</STRONG>   since   the  latter  requires  including
-           <STRONG>&lt;varargs.h&gt;</STRONG>, which cannot be used in the same file  as  <STRONG>&lt;stdarg.h&gt;</STRONG>.
-           This  implementation  uses <STRONG>&lt;stdarg.h&gt;</STRONG> for both, because that header
+       <STRONG>o</STRONG>   The  Single  Unix Specification, Version 2 states that <STRONG>vw_scanw</STRONG>  is
+           preferred  to  <STRONG>vwscanw</STRONG>  since   the   latter   requires   including
+           <STRONG>&lt;varargs.h&gt;</STRONG>,  which  cannot be used in the same file as <STRONG>&lt;stdarg.h&gt;</STRONG>.
+           This implementation uses <STRONG>&lt;stdarg.h&gt;</STRONG> for both, because  that  header
            is included in <STRONG>&lt;curses.h</STRONG>&gt;.
 
-       <STRONG>o</STRONG>   X/Open Curses, Issue 5 (December 2007) marked <STRONG>vwscanw</STRONG>  (along  with
+       <STRONG>o</STRONG>   X/Open  Curses,  Issue 5 (December 2007) marked <STRONG>vwscanw</STRONG> (along with
            <STRONG>vwprintw</STRONG> and the termcap interface) as withdrawn.
 
-       Both  XSI and The Single Unix Specification, Version 2 state that these
+       Both XSI and The Single Unix Specification, Version 2 state that  these
        functions return <STRONG>ERR</STRONG> or <STRONG>OK</STRONG>.
 
-       <STRONG>o</STRONG>   Since the underlying  <STRONG>scanf(3)</STRONG>  can  return  the  number  of  items
+       <STRONG>o</STRONG>   Since  the  underlying  <STRONG>scanf(3)</STRONG>  can  return  the  number of items
            scanned, and the SVr4 code was documented to use this feature, this
-           is probably an editing error which was introduced  in  XSI,  rather
+           is  probably  an  editing error which was introduced in XSI, rather
            than being done intentionally.
 
-       <STRONG>o</STRONG>   This  implementation  returns the number of items scanned, for com-
-           patibility with SVr4  curses.   As  of  2018,  NetBSD  curses  also
-           returns  the  number  of  items  scanned.   Both ncurses and NetBSD
+       <STRONG>o</STRONG>   This implementation returns the number of items scanned,  for  com-
+           patibility  with  SVr4  curses.   As  of  2018,  NetBSD curses also
+           returns the number of  items  scanned.   Both  ncurses  and  NetBSD
            curses call <STRONG>vsscanf</STRONG> to scan the string, which returns <STRONG>EOF</STRONG> on error.
 
-       <STRONG>o</STRONG>   Portable applications should only test if the return value is  <STRONG>ERR</STRONG>,
+       <STRONG>o</STRONG>   Portable  applications should only test if the return value is <STRONG>ERR</STRONG>,
            since the <STRONG>OK</STRONG> value (zero) is likely to be misleading.
 
-           One  possible way to get useful results would be to use a "%n" con-
-           version at the end of the format string to  ensure  that  something
+           One possible way to get useful results would be to use a "%n"  con-
+           version  at  the  end of the format string to ensure that something
            was processed.
 
 
 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
+<li><a href="#h2-HISTORY">HISTORY</a></li>
 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
 </ul>
index afb44f0b8b9dbf9aec9e35cb0ca490d7a9a2ede9..0e56d2139ec932f3a933576ef60c4e0e8fefacb3 100644 (file)
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>  and  related  pages  whose names begin "form_" for detailed
        descriptions of the entry points.
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 
index efa54b8a8a2b55aef0f5e24024faae4b56b4f059..7dfa3e08dec6c4a15655a04cbb1e446eaaaa0b11 100644 (file)
 
        https://invisible-island.net/ncurses/tctest.html
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index f5366dd79a05f049d031c790bb856b4f9e18212f..4945c503b56f69d2d75a1b0f2c987346174d216c 100644 (file)
@@ -91,7 +91,7 @@
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <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>
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index 2bf45a21737c07c6b24696d46e1fcdf0b6dcdf32..0677ce8f099463bc8687cd5350b9976ba33e23da 100644 (file)
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>  and  related  pages  whose names begin "menu_" for detailed
        descriptions of the entry points.
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 
index ca468266e20d989df407cdc4b33d96b5448c9a36..bda5c0ccd28e723041dc734a06c8b08fdb972581 100644 (file)
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: ncurses.3x,v 1.145 2020/02/23 01:05:45 tom Exp @
+  * @Id: ncurses.3x,v 1.146 2020/03/14 23:13:18 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
@@ -60,7 +60,7 @@
        method of updating  character  screens  with  reasonable  optimization.
        This  implementation  is  "new  curses"  (ncurses)  and is the approved
        replacement for 4.4BSD classic curses,  which  has  been  discontinued.
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
        The  <STRONG>ncurses</STRONG>  library emulates the curses library of System V Release 4
        UNIX, and XPG4 (X/Open Portability Guide) curses  (also  known  as  XSI
            ble.  That depends on the value used for <STRONG>_XOPEN_SOURCE</STRONG> feature test
            macro.
 
+       <STRONG>o</STRONG>   X/Open  Curses  documents  one  required header, in a special case:
+           &lt;stdarg.h&gt;  before  &lt;curses.h&gt;  to  prototype  the  <STRONG>vw_printw</STRONG>   and
+           <STRONG>vw_scanw</STRONG>  functions  (as well as the obsolete the <STRONG>vwprintw</STRONG> and <STRONG>vws-</STRONG>
+           <STRONG>canw</STRONG> functions).  Each of those uses a <STRONG>va_list</STRONG> parameter.
+
+           The two obsolete functions were  introduced  in  SVr3.   The  other
+           functions  were  introduced  in  X/Open  Curses.   In between, SVr4
+           curses provided for  the  possibility  that  an  application  might
+           include either &lt;varargs.h&gt; or &lt;stdarg.h&gt;.  Initially, that was done
+           by using <STRONG>void*</STRONG> for the <STRONG>va_list</STRONG> parameter.  Later,  a  special  type
+           (defined  in &lt;stdio.h&gt;) was introduced, to allow for compiler type-
+           checking.  That special type is always available, because &lt;stdio.h&gt;
+           is always included by &lt;curses.h&gt;.
+
+           None of the X/Open Curses implementations require an application to
+           include &lt;stdarg.h&gt;  before  &lt;curses.h&gt;  because  they  either  have
+           allowed  for  a  special type, or (like ncurses) include &lt;stdarg.h&gt;
+           directly to provide a portable interface.
+
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
-       If  standard  output from a <STRONG>ncurses</STRONG> program is re-directed to something
-       which is not a tty, screen updates will be directed to standard  error.
+       If standard output from a <STRONG>ncurses</STRONG> program is re-directed  to  something
+       which  is not a tty, screen updates will be directed to standard error.
        This was an undocumented feature of AT&amp;T System V Release 3 curses.
 
 
index 6af756184431635768964dbc3c73bf329bcf9712..e2f9914b3bf5232d2b122f95b8e17a8de450c49f 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 
index d5aa1ad6d21a958a61197d05790c8e6eab391212..5a11c98158f18e5f9c461d146aad07d7e166114d 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index 4d0781c6e02ccb351a939b02d18572af95fb0c7f..635a9960d728b8b85697b4e307edd292757f7c89 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <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>.
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 
index 4ec3ef3ad24cbf5208064abb9a021a828cea429c..6e879dd41e28d9fbdf3819ef2bc06104d6719bab 100644 (file)
        have, by specifying how to perform screen operations, and by specifying
        padding requirements and initialization sequences.
 
-       This manual describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This manual describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 </PRE><H3><a name="h3-Terminfo-Entry-Syntax">Terminfo Entry Syntax</a></H3><PRE>
index c10d02e59ea0b38baacb69a452906ac7a46527d6..87b9817671af685db7ccf6ad04cc933290adea6b 100644 (file)
        <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>,
        <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>.
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 </PRE><H2><a name="h2-AUTHOR">AUTHOR</a></H2><PRE>
index bed037e83f26e565822dde5dd20a7079183262d5..56bd133fef91efccb9d314a0773800efb0bae170 100644 (file)
        <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>
        <STRONG><A HREF="terminfo.5.html">minfo(5)</A></STRONG>.
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 
index ff331ea845fa2798533d55bc1cb9c8d47184cd72..91a183f1f4df2f9ddd0ab943916fc72a6116ca61 100644 (file)
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
        <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>.
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 
index 72bf369401e778eb9874f3bb6e5fd935395d557b..3d334abc53c41b77c805fba5a4290ee4c03ec208 100644 (file)
        <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>,
        <STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG>
 
-       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200222).
+       This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200314).
 
 
 
index 4d060d73cd1a5ec3e421e6d9865d3d39b20338c8..cd311fe60f729e2584b0aa0daa823c33483bb4ee 100644 (file)
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_printw.3x,v 1.25 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_printw.3x,v 1.26 2020/03/14 23:48:47 tom Exp $
 .TH curs_printw 3X ""
 .ie \n(.g .ds `` \(lq
 .el       .ds `` ``
@@ -89,6 +89,42 @@ It will return an error if the window pointer is null.
 Functions with a \*(``mv\*('' prefix first perform a cursor movement using
 \fBwmove\fP, and return an error if the position is outside the window,
 or if the window pointer is null.
+.SH HISTORY
+While \fBprintw\fP was implemented in 4BSD,
+it was unused until 4.2BSD (which used it in games).
+That early version of curses was before the ANSI C standard.
+It did not use <varargs.h>, though that was available.
+In 1991 (a couple of years after SVr4 was generally available,
+and after the C standard was published),
+other developers updated the library,
+using <stdarg.h> internally in 4.4BSD curses.
+Even with this improvement,
+BSD curses did not use function prototypes (or even declare
+functions) in the <curses.h> header until 1992.
+.PP
+SVr2 documented
+\fBprintw\fP,
+\fBwprintw\fP
+tersely as \*(``printf on \fIstdscr\fP\*('' and
+tersely as \*(``printf on \fIwin\fP\*('', respectively.
+.PP
+SVr3 added
+\fBmvprintw\fP, and
+\fBmvwprintw\fP, with a three-line summary saying that they were analogous
+to \fBprintf\fP(3),
+explaining that the string which would be output from \fBprintf\fP(3) would
+instead be output using \fBwaddstr\fP on the given window.
+SVr3 also added \fBvwprintw\fP, saying that the third parameter
+is a \fBva_list\fP, defined in <varargs.h>,
+and referring the reader to the manual pages for \fIvarargs\fP and
+\fIvprintf\fP for detailed descriptions.
+.PP
+SVr4 added no new variations of \fBprintw\fP,
+but provided for using <varargs.h> or <stdarg.h> to define the \fBva_list\fP
+type.
+.PP
+X/Open Curses added \fBvw_printw\fP to replace \fBvwprintw\fP,
+stating that its \fBva_list\fP definition requires <stdarg.h>.
 .SH PORTABILITY
 In this implementation, \fBvw_printw\fP and \fBvwprintw\fP are equivalent,
 to support legacy applications.
index 9407ae6489d8fe4b0976409cf9d07722d61f3266..870b4b4cb72d5eede887c4f8a1932aef8aa0b936 100644 (file)
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_scanw.3x,v 1.26 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_scanw.3x,v 1.27 2020/03/15 00:14:30 tom Exp $
 .TH curs_scanw 3X ""
 .ie \n(.g .ds `` \(lq
 .el       .ds `` ``
@@ -83,6 +83,44 @@ which were mapped in the call.
 Functions with a \*(``mv\*('' prefix first perform a cursor movement using
 \fBwmove\fP, and return an error if the position is outside the window,
 or if the window pointer is null.
+.SH HISTORY
+While \fBscanw\fP was implemented in 4BSD,
+none of the BSD releases used it until 4.4BSD (in a game).
+That early version of curses was before the ANSI C standard.
+It did not use <varargs.h>, though that was available.
+In 1991 (a couple of years after SVr4 was generally available,
+and after the C standard was published),
+other developers updated the library,
+using <stdarg.h> internally in 4.4BSD curses.
+Even with this improvement,
+BSD curses did not use function prototypes (or even declare
+functions) in the <curses.h> header until 1992.
+.PP
+SVr2 documented
+\fBscanw\fP,
+\fBwscanw\fP
+tersely as \*(``scanf through \fIstdscr\fP\*('' and
+tersely as \*(``scanf through \fIwin\fP\*('', respectively.
+.PP
+SVr3 added
+\fBmvscanw\fP, and
+\fBmvwscanw\fP, with a three-line summary saying that they were analogous
+to \fBscanf\fP(3),
+explaining that the string which would be output from \fBscanf\fP(3) would
+instead be output using \fBwaddstr\fP on the given window.
+SVr3 also added \fBvwscanw\fP, saying that the third parameter
+is a \fBva_list\fP, defined in <varargs.h>,
+and referring the reader to the manual pages for \fIvarargs\fP and
+\fIvprintf\fP for detailed descriptions.
+(Because the SVr3 documentation does not mention \fIvscanf\fP,
+that reference to \fIvprintf\fP may not be an error).
+.PP
+SVr4 added no new variations of \fBscanw\fP,
+but provided for using <varargs.h> or <stdarg.h> to define the \fBva_list\fP
+type.
+.PP
+X/Open Curses added \fBvw_scanw\fP to replace \fBvwscanw\fP,
+stating that its \fBva_list\fP definition requires <stdarg.h>.
 .SH PORTABILITY
 In this implementation, \fBvw_scanw\fP and \fBvwscanw\fP are equivalent,
 to support legacy applications.
index 74f390cbc5b63e873c6f8a53b78f74c2578914a8..d51a95053b11b613d9b643366421e986ea943182 100644 (file)
@@ -28,7 +28,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: ncurses.3x,v 1.145 2020/02/23 01:05:45 tom Exp $
+.\" $Id: ncurses.3x,v 1.146 2020/03/14 23:13:18 tom Exp $
 .hy 0
 .TH ncurses 3X ""
 .ie \n(.g .ds `` \(lq
@@ -1483,6 +1483,29 @@ wide-character support.
 If the header is included, its symbols may be made visible.
 That depends on the value used for \fB_XOPEN_SOURCE\fP
 feature test macro.
+.bP
+X/Open Curses documents one required header,
+in a special case: <stdarg.h> before <curses.h> to prototype
+the \fBvw_printw\fP and \fBvw_scanw\fP functions
+(as well as the obsolete
+the \fBvwprintw\fP and \fBvwscanw\fP functions).
+Each of those uses a \fBva_list\fP parameter.
+.IP
+The two obsolete functions were introduced in SVr3.
+The other functions were introduced in X/Open Curses.
+In between, SVr4 curses provided for the possibility that
+an application might include either <varargs.h> or <stdarg.h>.
+Initially, that was done by using \fBvoid*\fP for the \fBva_list\fP
+parameter.
+Later, a special type (defined in <stdio.h>) was introduced,
+to allow for compiler type-checking.
+That special type is always available,
+because <stdio.h> is always included by <curses.h>.
+.IP
+None of the X/Open Curses implementations require an application
+to include <stdarg.h> before <curses.h> because they either
+have allowed for a special type, or (like ncurses) include <stdarg.h>
+directly to provide a portable interface.
 .SH NOTES
 .PP
 If standard output from a \fBncurses\fR program is re-directed to something
index df6ed0771feb11f72aa6922bf6a2c8d337398fd8..3f097d1a1d17f529c92aaf05a6039e939d07348d 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.2+20200308) unstable; urgency=low
+ncurses6 (6.2+20200314) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 08 Mar 2020 10:28:23 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 14 Mar 2020 11:30:00 -0400
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index df6ed0771feb11f72aa6922bf6a2c8d337398fd8..3f097d1a1d17f529c92aaf05a6039e939d07348d 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.2+20200308) unstable; urgency=low
+ncurses6 (6.2+20200314) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 08 Mar 2020 10:28:23 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 14 Mar 2020 11:30:00 -0400
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index 9c56f8e86ab6f142a127b42ee2ecb85742bcd8d1..5d883a1fb31248b98ab251da02b0d5abd8f78bda 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.2+20200308) unstable; urgency=low
+ncurses6 (6.2+20200314) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 08 Mar 2020 10:28:23 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 14 Mar 2020 11:30:00 -0400
 
 ncurses6 (5.9-20120608) unstable; urgency=low
 
index 58bccfd57bed960cd9b7f82adc89ee71b3275bb1..40ce7c32c56d1d4c16a432a4fb1e072449c8bca7 100644 (file)
@@ -1,4 +1,4 @@
-; $Id: mingw-ncurses.nsi,v 1.384 2020/03/08 14:28:23 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.385 2020/03/14 15:30:00 tom Exp $\r
 \r
 ; TODO add examples\r
 ; TODO bump ABI to 6\r
@@ -10,7 +10,7 @@
 !define VERSION_MAJOR "6"\r
 !define VERSION_MINOR "2"\r
 !define VERSION_YYYY  "2020"\r
-!define VERSION_MMDD  "0308"\r
+!define VERSION_MMDD  "0314"\r
 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
 \r
 !define MY_ABI   "5"\r
index 53bd219b796648213929c26afa33148c2aa9765b..53f3020ccb5d365f3bdb8c25da8c6af5f7d5c4ea 100644 (file)
@@ -3,7 +3,7 @@
 Summary: shared libraries for terminal handling
 Name: mingw32-ncurses6
 Version: 6.2
-Release: 20200308
+Release: 20200314
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index f44da34c3063000200f092dfeb5e39c50b8aed81..de34e5a3412670d3f2f0f0f19ebc4474a955b5da 100644 (file)
@@ -1,7 +1,7 @@
 Summary: shared libraries for terminal handling
 Name: ncurses6
 Version: 6.2
-Release: 20200308
+Release: 20200314
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index df35ece2b07d945fcb557bda49d25fc605ee7b3b..978c06b0241e655a8f2e27216199066742de9b19 100644 (file)
@@ -1,7 +1,7 @@
 Summary: Curses library with POSIX thread support.
 Name: ncursest6
 Version: 6.2
-Release: 20200308
+Release: 20200314
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz