1#if !defined _ISOMAC && defined _IO_MTSAFE_IO
2# include <stdio-lock.h>
3#endif
4#include <libio/libio.h>
5
6#ifndef _ISOMAC
7#ifndef _LIBC_LIBIO_H
8#define _LIBC_LIBIO_H
9
10libc_hidden_proto (__overflow)
11libc_hidden_proto (__underflow)
12libc_hidden_proto (__uflow)
13libc_hidden_proto (__woverflow)
14libc_hidden_proto (__wunderflow)
15libc_hidden_proto (__wuflow)
16libc_hidden_proto (_IO_free_backup_area)
17libc_hidden_proto (_IO_free_wbackup_area)
18libc_hidden_proto (_IO_padn)
19libc_hidden_proto (_IO_putc)
20libc_hidden_proto (_IO_sgetn)
21libc_hidden_proto (_IO_vfprintf)
22libc_hidden_proto (_IO_vfscanf)
23
24#ifdef _IO_MTSAFE_IO
25# undef _IO_peekc
26# undef _IO_flockfile
27# undef _IO_funlockfile
28# undef _IO_ftrylockfile
29
30# define _IO_peekc(_fp) _IO_peekc_locked (_fp)
31# if _IO_lock_inexpensive
32# define _IO_flockfile(_fp) \
33 if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_lock_lock (*(_fp)->_lock)
34# define _IO_funlockfile(_fp) \
35 if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_lock_unlock (*(_fp)->_lock)
36# else
37# define _IO_flockfile(_fp) \
38 if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_flockfile (_fp)
39# define _IO_funlockfile(_fp) \
40 if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_funlockfile (_fp)
41# endif
42#endif /* _IO_MTSAFE_IO */
43
44#endif
45#endif
46