Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Jun 2005 09:53:15 +0200 (CEST)
From:      Michael Reifenberger <mike@Reifenberger.com>
To:        standards@freebsd.org
Subject:   libstand functions not ansi-c compiliant
Message-ID:  <20050608094851.D29843@fw.reifenberger.com>

next in thread | raw e-mail | index | archive | help
Hi,
as it seems are a few functions as defined/implemented in libstand
not ansi-c compiant: putchar, vprintf, vsprintf.
They are defined to return void instead of int.

The following patch tries to correct that.
Any objections to -commit?



Index: printf.c
===================================================================
RCS file: /home/ncvs/src/lib/libstand/printf.c,v
retrieving revision 1.8
diff -u -r1.8 printf.c
--- printf.c	6 Apr 2003 05:25:48 -0000	1.8
+++ printf.c	8 Jun 2005 07:48:23 -0000
@@ -75,11 +75,13 @@
  	return retval;
  }

-void
+int
  vprintf(const char *fmt, va_list ap)
  {
+	int retval;

  	kvprintf(fmt, putchar, NULL, 10, ap);
+	return(retval);
  }

  int
@@ -95,13 +97,14 @@
  	return retval;
  }

-void
+int
  vsprintf(char *buf, const char *cfmt, va_list ap)
  {
  	int	retval;

  	retval = kvprintf(cfmt, NULL, (void *)buf, 10, ap);
  	buf[retval] = '\0';
+	return(retval);
  }

  /*
Index: stand.h
===================================================================
RCS file: /home/ncvs/src/lib/libstand/stand.h,v
retrieving revision 1.41
diff -u -r1.41 stand.h
--- stand.h	17 May 2005 17:46:29 -0000	1.41
+++ stand.h	8 Jun 2005 07:48:24 -0000
@@ -248,9 +248,9 @@
  extern char	*getdisklabel(const char *, struct disklabel *);

  extern int	printf(const char *fmt, ...) __printflike(1, 2);
-extern void	vprintf(const char *fmt, __va_list);
+extern int	vprintf(const char *fmt, __va_list);
  extern int	sprintf(char *buf, const char *cfmt, ...) __printflike(2, 3);
-extern void	vsprintf(char *buf, const char *cfmt, __va_list);
+extern int	vsprintf(char *buf, const char *cfmt, __va_list);

  extern void	twiddle(void);

@@ -369,7 +369,7 @@
   */
  extern int		getchar(void);
  extern int		ischar(void);
-extern void		putchar(int);
+extern int		putchar(int);
  extern int		devopen(struct open_file *, const char *, const char **);
  extern int		devclose(struct open_file *f);
  extern void		panic(const char *, ...) __dead2 __printflike(1, 2);


Bye/2
---
Michael Reifenberger, Business Development Manager SAP-Basis, Plaut Consulting
Comp: Michael.Reifenberger@plaut.de | Priv: Michael@Reifenberger.com
       http://www.plaut.de           |       http://www.Reifenberger.com




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050608094851.D29843>