source: trunk/libs/newlib/src/newlib/libc/stdio/printf.c @ 577

Last change on this file since 577 was 444, checked in by satin@…, 6 years ago

add newlib,libalmos-mkh, restructure shared_syscalls.h and mini-libc

File size: 1.7 KB
Line 
1/*
2 * Copyright (c) 1990 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms are permitted
6 * provided that the above copyright notice and this paragraph are
7 * duplicated in all such forms and that any documentation,
8 * advertising materials, and other materials related to such
9 * distribution and use acknowledge that the software was developed
10 * by the University of California, Berkeley.  The name of the
11 * University may not be used to endorse or promote products derived
12 * from this software without specific prior written permission.
13 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
14 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
15 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
16 */
17/* doc in sprintf.c */
18
19#include <_ansi.h>
20#include <reent.h>
21#include <stdio.h>
22#include <stdarg.h>
23#include "local.h"
24
25int
26_printf_r (struct _reent *ptr,
27       const char *__restrict fmt, ...)
28{
29  int ret;
30  va_list ap;
31
32  _REENT_SMALL_CHECK_INIT (ptr);
33  va_start (ap, fmt);
34  ret = _vfprintf_r (ptr, _stdout_r (ptr), fmt, ap);
35  va_end (ap);
36  return ret;
37}
38
39#ifdef _NANO_FORMATTED_IO
40int
41_iprintf_r (struct _reent *, const char *, ...)
42       _ATTRIBUTE ((__alias__("_printf_r")));
43#endif
44
45#ifndef _REENT_ONLY
46
47int
48printf (const char *__restrict fmt, ...)
49{
50  int ret;
51  va_list ap;
52  struct _reent *ptr = _REENT;
53
54  _REENT_SMALL_CHECK_INIT (ptr);
55  va_start (ap, fmt);
56  ret = _vfprintf_r (ptr, _stdout_r (ptr), fmt, ap);
57  va_end (ap);
58  return ret;
59}
60
61#ifdef _NANO_FORMATTED_IO
62int
63iprintf (const char *, ...)
64       _ATTRIBUTE ((__alias__("printf")));
65#endif
66#endif /* ! _REENT_ONLY */
Note: See TracBrowser for help on using the repository browser.