putchar.c (101776) | putchar.c (127100) |
---|---|
1/*- 2 * Copyright (c) 1990, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * This code is derived from software contributed to Berkeley by 6 * Chris Torek. 7 * 8 * Redistribution and use in source and binary forms, with or without --- 24 unchanged lines hidden (view full) --- 33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 34 * SUCH DAMAGE. 35 */ 36 37#if defined(LIBC_SCCS) && !defined(lint) 38static char sccsid[] = "@(#)putchar.c 8.1 (Berkeley) 6/4/93"; 39#endif /* LIBC_SCCS and not lint */ 40#include <sys/cdefs.h> | 1/*- 2 * Copyright (c) 1990, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * This code is derived from software contributed to Berkeley by 6 * Chris Torek. 7 * 8 * Redistribution and use in source and binary forms, with or without --- 24 unchanged lines hidden (view full) --- 33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 34 * SUCH DAMAGE. 35 */ 36 37#if defined(LIBC_SCCS) && !defined(lint) 38static char sccsid[] = "@(#)putchar.c 8.1 (Berkeley) 6/4/93"; 39#endif /* LIBC_SCCS and not lint */ 40#include <sys/cdefs.h> |
41__FBSDID("$FreeBSD: head/lib/libc/stdio/putchar.c 101776 2002-08-13 09:30:41Z tjr $"); | 41__FBSDID("$FreeBSD: head/lib/libc/stdio/putchar.c 127100 2004-03-17 01:43:08Z tjr $"); |
42 43#include "namespace.h" 44#include <stdio.h> 45#include "un-namespace.h" 46#include "local.h" 47#include "libc_private.h" 48 | 42 43#include "namespace.h" 44#include <stdio.h> 45#include "un-namespace.h" 46#include "local.h" 47#include "libc_private.h" 48 |
49#undef putchar 50 |
|
49/* | 51/* |
50 * putchar has traditionally been a macro in <stdio.h>. That is no 51 * longer true because POSIX requires it to be thread-safe. POSIX 52 * does define putchar_unlocked() which is defined as a macro and is 53 * probably what you want to use instead. 54 * 55 * #undef putchar 56 */ 57/* | |
58 * A subroutine version of the macro putchar 59 */ 60int 61putchar(c) 62 int c; 63{ 64 int retval; 65 FILE *so = stdout; 66 67 FLOCKFILE(so); 68 ORIENT(so, -1); 69 retval = __sputc(c, so); 70 FUNLOCKFILE(so); 71 return (retval); 72} | 52 * A subroutine version of the macro putchar 53 */ 54int 55putchar(c) 56 int c; 57{ 58 int retval; 59 FILE *so = stdout; 60 61 FLOCKFILE(so); 62 ORIENT(so, -1); 63 retval = __sputc(c, so); 64 FUNLOCKFILE(so); 65 return (retval); 66} |