From peter@vk2pj.alcatel.com.au  Mon Jan  6 01:37:02 1997
Received: from gatekeeper.alcatel.com.au (gatekeeper.alcatel.com.au [203.17.66.1])
          by freefall.freebsd.org (8.8.4/8.8.4) with ESMTP id BAA23141
          for <FreeBSD-gnats-submit@freebsd.org>; Mon, 6 Jan 1997 01:36:59 -0800 (PST)
Received: from 139.188.22.50 (139.188.22.50) by gatekeeper.alcatel.com.au
 (PMDF V5.0-5 #11861) id <01IDWMEN6D1S0008M7@gatekeeper.alcatel.com.au> for
 FreeBSD-gnats-submit@freebsd.org; Mon, 06 Jan 1997 20:35:42 +1000
Received: from vk2pj.alcatel.com.au (vk2pj.alcatel.com.au)
 by cbd.alcatel.com.au (PMDF V5.0-5 #9241)
 id <01IDWMDK0B3K9QVLLI@cbd.alcatel.com.au> for
 FreeBSD-gnats-submit@freebsd.org; Mon, 06 Jan 1997 20:34:53 +1100
Received: (from peter@localhost) by vk2pj.alcatel.com.au (8.7.5/8.7.3)
 id UAA27432; Mon, 06 Jan 1997 20:36:14 +1100 (EST)
Message-Id: <199701060936.UAA27432@vk2pj.alcatel.com.au>
Date: Mon, 06 Jan 1997 20:36:14 +1100 (EST)
From: peter.jeremy@alcatel.com.au
Reply-To: peter.jeremy@alcatel.com.au
To: FreeBSD-gnats-submit@freebsd.org
Subject: Inconsistent tputs(3) prototypes in curses.h & termcap.h
X-Send-Pr-Version: 3.2

>Number:         2383
>Category:       bin
>Synopsis:       Inconsistent tputs(3) prototypes in curses.h & termcap.h
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Jan  6 01:40:06 PST 1997
>Closed-Date:    Sat May 30 17:24:34 PDT 1998
>Last-Modified:  Sat May 30 17:25:05 PDT 1998
>Originator:     Peter Jeremy
>Release:        FreeBSD 2.1-STABLE i386
>Organization:
Peter Jeremy (VK2PJ)			peter.jeremy@alcatel.com.au
Alcatel Australia Limited
41 Mandible St				Phone: +61 2 9690 5019
ALEXANDRIA  NSW  2015			Fax:   +61 2 9690 5247
>Environment:

none

>Description:

A number of different include files include prototypes for tputs(3).  These
include curses.h (twice), ncurses.h, term.h and termcap.h.  According to
the manual page, the prototype for tputs() (located in termcap(3)) is
	int tputs(const char *cp, int affcnt, int (*outc)(int));
This prototype is inconsistent with the prototype definition in termcap.h
and one of the definitions in curses.h.

The prototype in termcap.h would appear to be in error and should be
corrected (see below).  Since the inconsistent prototype in curses.h
is only visible when the macro _CURSES_PRIVATE is defined, the problem
in this case is restricted to building libcurses.  It would be nice
if it was consistent with the public interface.

>How-To-Repeat:

$ man tputs
$ grep tputs /usr/include/*.h

>Fix:

*** /cdrom/usr/src/lib/libedit/termcap.h	Tue Jun  4 22:52:29 1996
--- /usr/src/lib/libedit/termcap.h	Sat Dec 14 08:07:11 1996
***************
*** 47,52 ****
  int   tgetflag	__P((char *));
  int   tgetnum	__P((char *));
  char *tgoto	__P((char *, int, int));
! char *tputs	__P((char *, int, void (*)(int)));
  
  #endif /* _h_termcap */
--- 47,52 ----
  int   tgetflag	__P((char *));
  int   tgetnum	__P((char *));
  char *tgoto	__P((char *, int, int));
! char *tputs	__P((char *, int, int (*)(int)));
  
  #endif /* _h_termcap */

(And a similar change to /usr/include/termcap.h).
>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->closed 
State-Changed-By: steve 
State-Changed-When: Sat May 30 17:24:34 PDT 1998 
State-Changed-Why:  
Fixed by Peter Wemm in revision 1.8. 
>Unformatted:
