Pristine Ack-5.5
[Ack-5.5.git] / lang / cem / libcc.ansi / stdio / loc_incl.h
1 /*
2  * loc_incl.h - local include file for stdio library
3  */
4 /* $Id: loc_incl.h,v 1.6 1994/06/24 11:50:42 ceriel Exp $ */
5
6 #include        <stdio.h>
7
8 #define fileno(p)               ((p)->_fd)
9 #define io_testflag(p,x)        ((p)->_flags & (x))
10
11 #include        <stdarg.h>
12 int _doprnt(const char *format, va_list ap, FILE *stream);
13 int _doscan(FILE * stream, const char *format, va_list ap);
14 char *_i_compute(unsigned long val, int base, char *s, int nrdigits);
15 char *_f_print(va_list *ap, int flags, char *s, char c, int precision);
16 void __cleanup(void);
17
18 FILE *popen(const char *command, const char *type);
19 FILE *fdopen(int fd, const char *mode);
20
21 #ifndef NOFLOAT
22 char *_ecvt(long double value, int ndigit, int *decpt, int *sign);
23 char *_fcvt(long double value, int ndigit, int *decpt, int *sign);
24 #endif  /* NOFLOAT */
25
26 #define FL_LJUST        0x0001          /* left-justify field */
27 #define FL_SIGN         0x0002          /* sign in signed conversions */
28 #define FL_SPACE        0x0004          /* space in signed conversions */
29 #define FL_ALT          0x0008          /* alternate form */
30 #define FL_ZEROFILL     0x0010          /* fill with zero's */
31 #define FL_SHORT        0x0020          /* optional h */
32 #define FL_LONG         0x0040          /* optional l */
33 #define FL_LONGDOUBLE   0x0080          /* optional L */
34 #define FL_WIDTHSPEC    0x0100          /* field width is specified */
35 #define FL_PRECSPEC     0x0200          /* precision is specified */
36 #define FL_SIGNEDCONV   0x0400          /* may contain a sign */
37 #define FL_NOASSIGN     0x0800          /* do not assign (in scanf) */
38 #define FL_NOMORE       0x1000          /* all flags collected */