Rev 4921 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4921 | Rev 6099 | ||
---|---|---|---|
1 | /* |
1 | /* |
2 | * Copyright (c) 1990 The Regents of the University of California. |
2 | * Copyright (c) 1990 The Regents of the University of California. |
3 | * All rights reserved. |
3 | * All rights reserved. |
4 | * |
4 | * |
5 | * Redistribution and use in source and binary forms are permitted |
5 | * Redistribution and use in source and binary forms are permitted |
6 | * provided that the above copyright notice and this paragraph are |
6 | * provided that the above copyright notice and this paragraph are |
7 | * duplicated in all such forms and that any documentation, |
7 | * duplicated in all such forms and that any documentation, |
8 | * advertising materials, and other materials related to such |
8 | * advertising materials, and other materials related to such |
9 | * distribution and use acknowledge that the software was developed |
9 | * distribution and use acknowledge that the software was developed |
10 | * by the University of California, Berkeley. The name of the |
10 | * by the University of California, Berkeley. The name of the |
11 | * University may not be used to endorse or promote products derived |
11 | * University may not be used to endorse or promote products derived |
12 | * from this software without specific prior written permission. |
12 | * from this software without specific prior written permission. |
13 | * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR |
13 | * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR |
14 | * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED |
14 | * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED |
15 | * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. |
15 | * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. |
16 | */ |
16 | */ |
17 | /* doc in sprintf.c */ |
17 | /* doc in sprintf.c */ |
18 | 18 | ||
19 | #include <_ansi.h> |
19 | #include <_ansi.h> |
20 | #include |
20 | #include |
21 | #include |
21 | #include |
22 | #include |
22 | #include |
23 | 23 | ||
24 | int |
24 | int |
25 | _DEFUN(_fprintf_r, (ptr, fp, fmt), |
25 | _DEFUN(_fprintf_r, (ptr, fp, fmt), |
26 | struct _reent *ptr _AND |
26 | struct _reent *ptr _AND |
27 | FILE *__restrict fp _AND |
27 | FILE *__restrict fp _AND |
28 | const char *__restrict fmt _DOTS) |
28 | const char *__restrict fmt _DOTS) |
29 | { |
29 | { |
30 | int ret; |
30 | int ret; |
31 | va_list ap; |
31 | va_list ap; |
32 | 32 | ||
33 | va_start (ap, fmt); |
33 | va_start (ap, fmt); |
34 | ret = _vfprintf_r (ptr, fp, fmt, ap); |
34 | ret = _vfprintf_r (ptr, fp, fmt, ap); |
35 | va_end (ap); |
35 | va_end (ap); |
36 | return ret; |
36 | return ret; |
37 | } |
37 | } |
- | 38 | ||
- | 39 | #ifdef _NANO_FORMATTED_IO |
|
- | 40 | int |
|
- | 41 | _EXFUN(_fiprintf_r, (struct _reent *, FILE *, const char *, ...) |
|
- | 42 | _ATTRIBUTE ((__alias__("_fprintf_r")))); |
|
- | 43 | #endif |
|
38 | 44 | ||
39 | #ifndef _REENT_ONLY |
45 | #ifndef _REENT_ONLY |
40 | 46 | ||
41 | int |
47 | int |
42 | _DEFUN(fprintf, (fp, fmt), |
48 | _DEFUN(fprintf, (fp, fmt), |
43 | FILE *__restrict fp _AND |
49 | FILE *__restrict fp _AND |
44 | const char *__restrict fmt _DOTS) |
50 | const char *__restrict fmt _DOTS) |
45 | { |
51 | { |
46 | int ret; |
52 | int ret; |
47 | va_list ap; |
53 | va_list ap; |
48 | 54 | ||
49 | va_start (ap, fmt); |
55 | va_start (ap, fmt); |
50 | ret = _vfprintf_r (_REENT, fp, fmt, ap); |
56 | ret = _vfprintf_r (_REENT, fp, fmt, ap); |
51 | va_end (ap); |
57 | va_end (ap); |
52 | return ret; |
58 | return ret; |
53 | } |
59 | } |
- | 60 | ||
- | 61 | #ifdef _NANO_FORMATTED_IO |
|
- | 62 | int |
|
- | 63 | _EXFUN(fiprintf, (FILE *, const char *, ...) |
|
- | 64 | _ATTRIBUTE ((__alias__("fprintf")))); |
|
54 | 65 | #endif |
|
55 | #endif /* ! _REENT_ONLY */ |
66 | #endif /* ! _REENT_ONLY */ |