[v2,05/17] ansification: remove _PARAMS

Message ID 20171207181909.1112-6-yselkowi@redhat.com
State New
Headers show
Series
  • Newlib ANSI-fication
Related show

Commit Message

Yaakov Selkowitz Dec. 7, 2017, 6:18 p.m.
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>

---
 libgloss/aarch64/_exit.c                 |   2 +-
 libgloss/aarch64/_kill.c                 |   2 +-
 libgloss/aarch64/svc.h                   |   6 +-
 libgloss/aarch64/syscalls.c              |  62 ++---
 libgloss/arm/_exit.c                     |   4 +-
 libgloss/arm/_kill.c                     |   2 +-
 libgloss/arm/swi.h                       |   6 +-
 libgloss/arm/syscalls.c                  |  62 ++---
 newlib/libc/include/_ansi.h              |   6 -
 newlib/libc/include/malloc.h             |  54 ++--
 newlib/libc/include/math.h               | 448 +++++++++++++++----------------
 newlib/libc/include/reent.h              |  50 ++--
 newlib/libc/include/sys/_default_fcntl.h |  18 +-
 newlib/libc/include/sys/errno.h          |   2 +-
 newlib/libc/include/sys/reent.h          |   2 +-
 newlib/libc/include/sys/timeb.h          |   2 +-
 newlib/libc/machine/cris/sys/errno.h     |   2 +-
 newlib/libc/machine/cris/sys/fcntl.h     |  12 +-
 newlib/libc/machine/powerpc/ufix64toa.c  |   4 +-
 newlib/libc/machine/powerpc/vfprintf.c   |  22 +-
 newlib/libc/search/qsort.c               |   4 +-
 newlib/libc/stdio/nano-vfprintf_local.h  |   4 +-
 newlib/libc/stdio/nano-vfscanf_i.c       |   2 +-
 newlib/libc/stdio/vfprintf.c             |   8 +-
 newlib/libc/stdio/vfscanf.c              |   2 +-
 newlib/libc/stdio/vfwprintf.c            |   8 +-
 newlib/libc/stdio/vfwscanf.c             |   6 +-
 newlib/libc/stdlib/atexit.h              |   4 +-
 newlib/libc/stdlib/cxa_atexit.c          |   2 +-
 newlib/libc/stdlib/exit.c                |   2 +-
 newlib/libc/stdlib/setenv.c              |   2 +-
 newlib/libc/stdlib/setenv_r.c            |   2 +-
 newlib/libc/string/strerror.c            |   2 +-
 newlib/libc/sys/arm/syscalls.c           |  62 ++---
 newlib/libc/sys/linux/sys/errno.h        |   2 +-
 newlib/libc/sys/linux/sys/fcntl.h        |  10 +-
 newlib/libc/sys/phoenix/sys/errno.h      |   2 +-
 newlib/libc/sys/sparc64/sys/fcntl.h      |   6 +-
 winsup/cygwin/include/cygwin/stdlib.h    |   4 +-
 winsup/cygwin/include/fcntl.h            |   4 +-
 winsup/cygwin/include/sys/file.h         |   2 +-
 41 files changed, 451 insertions(+), 457 deletions(-)

-- 
2.15.1

Patch

diff --git a/libgloss/aarch64/_exit.c b/libgloss/aarch64/_exit.c
index 1a6b01532..16564bbda 100644
--- a/libgloss/aarch64/_exit.c
+++ b/libgloss/aarch64/_exit.c
@@ -26,7 +26,7 @@ 
 #include <_ansi.h>
 #include "svc.h"
 
-void _exit _PARAMS ((int));
+void _exit (int);
 
 __attribute__ ((noreturn)) void
 _exit (int status)
diff --git a/libgloss/aarch64/_kill.c b/libgloss/aarch64/_kill.c
index 1d42371f0..8109ace12 100644
--- a/libgloss/aarch64/_kill.c
+++ b/libgloss/aarch64/_kill.c
@@ -28,7 +28,7 @@ 
 #include <errno.h>
 #include "svc.h"
 
-int _kill _PARAMS ((int, int));
+int _kill (int, int);
 
 int
 _kill (int pid, int sig)
diff --git a/libgloss/aarch64/svc.h b/libgloss/aarch64/svc.h
index 60bd00fca..2c3da1317 100644
--- a/libgloss/aarch64/svc.h
+++ b/libgloss/aarch64/svc.h
@@ -72,9 +72,9 @@ 
 #define SH_EXT_STDOUT_STDERR_BITNUM	0x1
 
 #if !defined (__ASSEMBLER__)
-extern int _get_semihosting_exts _PARAMS ((char*, int, int));
-extern int _has_ext_exit_extended _PARAMS ((void));
-extern int _has_ext_stdout_stderr _PARAMS ((void));
+extern int _get_semihosting_exts (char*, int, int);
+extern int _has_ext_exit_extended (void);
+extern int _has_ext_stdout_stderr (void);
 #endif
 
 #if defined(ARM_RDI_MONITOR) && !defined(__ASSEMBLER__)
diff --git a/libgloss/aarch64/syscalls.c b/libgloss/aarch64/syscalls.c
index 4de4e0dcc..5aeb3d0b5 100644
--- a/libgloss/aarch64/syscalls.c
+++ b/libgloss/aarch64/syscalls.c
@@ -47,37 +47,37 @@ 
   (param_block_t)(unsigned long) (PTR)
 
 /* Forward prototypes.  */
-int _system _PARAMS ((const char *));
-int _rename _PARAMS ((const char *, const char *));
-int _isatty _PARAMS ((int));
-clock_t _times _PARAMS ((struct tms *));
-int _gettimeofday _PARAMS ((struct timeval *, void *));
-int _unlink _PARAMS ((const char *));
-int _link _PARAMS ((void));
-int _stat _PARAMS ((const char *, struct stat *));
-int _fstat _PARAMS ((int, struct stat *));
-int _swistat _PARAMS ((int fd, struct stat * st));
-caddr_t _sbrk _PARAMS ((int));
-int _getpid _PARAMS ((int));
-int _close _PARAMS ((int));
-clock_t _clock _PARAMS ((void));
-int _swiclose _PARAMS ((int));
-int _open _PARAMS ((const char *, int, ...));
-int _swiopen _PARAMS ((const char *, int));
-int _write _PARAMS ((int, char *, int));
-int _swiwrite _PARAMS ((int, char *, int));
-int _lseek _PARAMS ((int, int, int));
-int _swilseek _PARAMS ((int, int, int));
-int _read _PARAMS ((int, char *, int));
-int _swiread _PARAMS ((int, char *, int));
-void initialise_monitor_handles _PARAMS ((void));
-
-static int checkerror _PARAMS ((int));
-static int error _PARAMS ((int));
-static int get_errno _PARAMS ((void));
+int _system (const char *);
+int _rename (const char *, const char *);
+int _isatty (int);
+clock_t _times (struct tms *);
+int _gettimeofday (struct timeval *, void *);
+int _unlink (const char *);
+int _link (void);
+int _stat (const char *, struct stat *);
+int _fstat (int, struct stat *);
+int _swistat (int fd, struct stat * st);
+caddr_t _sbrk (int);
+int _getpid (int);
+int _close (int);
+clock_t _clock (void);
+int _swiclose (int);
+int _open (const char *, int, ...);
+int _swiopen (const char *, int);
+int _write (int, char *, int);
+int _swiwrite (int, char *, int);
+int _lseek (int, int, int);
+int _swilseek (int, int, int);
+int _read (int, char *, int);
+int _swiread (int, char *, int);
+void initialise_monitor_handles (void);
+
+static int checkerror (int);
+static int error (int);
+static int get_errno (void);
 
 /* Semihosting utilities.  */
-static void initialise_semihosting_exts _PARAMS ((void));
+static void initialise_semihosting_exts (void);
 
 /* Struct used to keep track of the file position, just so we
    can implement fseek(fh,x,SEEK_CUR).  */
@@ -108,8 +108,8 @@  struct fdent
 
 static struct fdent openfiles[MAX_OPEN_FILES];
 
-static struct fdent *findslot _PARAMS ((int));
-static int newslot _PARAMS ((void));
+static struct fdent *findslot (int);
+static int newslot (void);
 
 /* Register name faking - works in collusion with the linker.  */
 #ifdef __ILP32__
diff --git a/libgloss/arm/_exit.c b/libgloss/arm/_exit.c
index ed0087637..ca2d21c43 100644
--- a/libgloss/arm/_exit.c
+++ b/libgloss/arm/_exit.c
@@ -1,7 +1,7 @@ 
 #include <_ansi.h>
 
-int _kill _PARAMS ((int, int));
-void _exit _PARAMS ((int));
+int _kill (int, int);
+void _exit (int);
 
 void
 _exit (int status)
diff --git a/libgloss/arm/_kill.c b/libgloss/arm/_kill.c
index 8871d3c36..fc77e8097 100644
--- a/libgloss/arm/_kill.c
+++ b/libgloss/arm/_kill.c
@@ -2,7 +2,7 @@ 
 #include <signal.h>
 #include "swi.h"
 
-int _kill _PARAMS ((int, int));
+int _kill (int, int);
 
 int
 _kill (int pid, int sig)
diff --git a/libgloss/arm/swi.h b/libgloss/arm/swi.h
index 72cb838dc..67eb36b3f 100644
--- a/libgloss/arm/swi.h
+++ b/libgloss/arm/swi.h
@@ -96,9 +96,9 @@ 
 #define SH_EXT_STDOUT_STDERR_BITNUM	0x1
 
 #if !defined (__ASSEMBLER__)
-extern int _get_semihosting_exts _PARAMS ((char*, int, int));
-extern int _has_ext_exit_extended _PARAMS ((void));
-extern int _has_ext_stdout_stderr _PARAMS ((void));
+extern int _get_semihosting_exts (char*, int, int);
+extern int _has_ext_exit_extended (void);
+extern int _has_ext_stdout_stderr (void);
 #endif
 
 #if defined(ARM_RDI_MONITOR) && !defined(__ASSEMBLER__)
diff --git a/libgloss/arm/syscalls.c b/libgloss/arm/syscalls.c
index 80713680b..b76858fc9 100644
--- a/libgloss/arm/syscalls.c
+++ b/libgloss/arm/syscalls.c
@@ -18,37 +18,37 @@ 
 #include "swi.h"
 
 /* Forward prototypes.  */
-int     _system     _PARAMS ((const char *));
-int     _rename     _PARAMS ((const char *, const char *));
-int     _isatty		_PARAMS ((int));
-clock_t _times		_PARAMS ((struct tms *));
-int     _gettimeofday	_PARAMS ((struct timeval *, void *));
-int     _unlink		_PARAMS ((const char *));
-int     _link 		_PARAMS ((void));
-int     _stat 		_PARAMS ((const char *, struct stat *));
-int     _fstat 		_PARAMS ((int, struct stat *));
-int	_swistat	_PARAMS ((int fd, struct stat * st));
-caddr_t _sbrk		_PARAMS ((int));
-int     _getpid		_PARAMS ((int));
-int     _close		_PARAMS ((int));
-clock_t _clock		_PARAMS ((void));
-int     _swiclose	_PARAMS ((int));
-int     _open		_PARAMS ((const char *, int, ...));
-int     _swiopen	_PARAMS ((const char *, int));
-int     _write 		_PARAMS ((int, char *, int));
-int     _swiwrite	_PARAMS ((int, char *, int));
-int     _lseek		_PARAMS ((int, int, int));
-int     _swilseek	_PARAMS ((int, int, int));
-int     _read		_PARAMS ((int, char *, int));
-int     _swiread	_PARAMS ((int, char *, int));
-void    initialise_monitor_handles _PARAMS ((void));
-
-static int	checkerror	_PARAMS ((int));
-static int	error		_PARAMS ((int));
-static int	get_errno	_PARAMS ((void));
+int     _system     (const char *);
+int     _rename     (const char *, const char *);
+int     _isatty		(int);
+clock_t _times		(struct tms *);
+int     _gettimeofday	(struct timeval *, void *);
+int     _unlink		(const char *);
+int     _link 		(void);
+int     _stat 		(const char *, struct stat *);
+int     _fstat 		(int, struct stat *);
+int	_swistat	(int fd, struct stat * st);
+caddr_t _sbrk		(int);
+int     _getpid		(int);
+int     _close		(int);
+clock_t _clock		(void);
+int     _swiclose	(int);
+int     _open		(const char *, int, ...);
+int     _swiopen	(const char *, int);
+int     _write 		(int, char *, int);
+int     _swiwrite	(int, char *, int);
+int     _lseek		(int, int, int);
+int     _swilseek	(int, int, int);
+int     _read		(int, char *, int);
+int     _swiread	(int, char *, int);
+void    initialise_monitor_handles (void);
+
+static int	checkerror	(int);
+static int	error		(int);
+static int	get_errno	(void);
 
 /* Semihosting utilities.  */
-static void initialise_semihosting_exts _PARAMS ((void));
+static void initialise_semihosting_exts (void);
 
 /* Struct used to keep track of the file position, just so we
    can implement fseek(fh,x,SEEK_CUR).  */
@@ -77,8 +77,8 @@  struct fdent
 
 static struct fdent openfiles [MAX_OPEN_FILES];
 
-static struct fdent* 	findslot	_PARAMS ((int));
-static int		newslot		_PARAMS ((void));
+static struct fdent* 	findslot	(int);
+static int		newslot		(void);
 
 /* Register name faking - works in collusion with the linker.  */
 register char * stack_ptr asm ("sp");
diff --git a/newlib/libc/include/_ansi.h b/newlib/libc/include/_ansi.h
index 41623f7a7..5e2eac93a 100644
--- a/newlib/libc/include/_ansi.h
+++ b/newlib/libc/include/_ansi.h
@@ -68,9 +68,6 @@ 
 #ifndef _LONG_DOUBLE
 #define _LONG_DOUBLE long double
 #endif
-#ifndef _PARAMS
-#define _PARAMS(paramlist)		paramlist
-#endif
 #else	
 #define	_PTR		char *
 #define	_VOLATILE
@@ -82,9 +79,6 @@ 
 #define	_DEFUN_VOID(name)		name()
 #define _CAST_VOID
 #define _LONG_DOUBLE double
-#ifndef _PARAMS
-#define _PARAMS(paramlist)		()
-#endif
 #endif
 
 /* Support gcc's __attribute__ facility.  */
diff --git a/newlib/libc/include/malloc.h b/newlib/libc/include/malloc.h
index 41b5efdc0..b1e0a0946 100644
--- a/newlib/libc/include/malloc.h
+++ b/newlib/libc/include/malloc.h
@@ -34,113 +34,113 @@  struct mallinfo {
 
 /* The routines.  */
 
-extern _PTR malloc _PARAMS ((size_t));
+extern _PTR malloc (size_t);
 #ifdef __CYGWIN__
 #undef _malloc_r
 #define _malloc_r(r, s) malloc (s)
 #else
-extern _PTR _malloc_r _PARAMS ((struct _reent *, size_t));
+extern _PTR _malloc_r (struct _reent *, size_t);
 #endif
 
-extern _VOID free _PARAMS ((_PTR));
+extern _VOID free (_PTR);
 #ifdef __CYGWIN__
 #undef _free_r
 #define _free_r(r, p) free (p)
 #else
-extern _VOID _free_r _PARAMS ((struct _reent *, _PTR));
+extern _VOID _free_r (struct _reent *, _PTR);
 #endif
 
-extern _PTR realloc _PARAMS ((_PTR, size_t));
+extern _PTR realloc (_PTR, size_t);
 #ifdef __CYGWIN__
 #undef _realloc_r
 #define _realloc_r(r, p, s) realloc (p, s)
 #else
-extern _PTR _realloc_r _PARAMS ((struct _reent *, _PTR, size_t));
+extern _PTR _realloc_r (struct _reent *, _PTR, size_t);
 #endif
 
-extern _PTR calloc _PARAMS ((size_t, size_t));
+extern _PTR calloc (size_t, size_t);
 #ifdef __CYGWIN__
 #undef _calloc_r
 #define _calloc_r(r, s1, s2) calloc (s1, s2);
 #else
-extern _PTR _calloc_r _PARAMS ((struct _reent *, size_t, size_t));
+extern _PTR _calloc_r (struct _reent *, size_t, size_t);
 #endif
 
-extern _PTR memalign _PARAMS ((size_t, size_t));
+extern _PTR memalign (size_t, size_t);
 #ifdef __CYGWIN__
 #undef _memalign_r
 #define _memalign_r(r, s1, s2) memalign (s1, s2);
 #else
-extern _PTR _memalign_r _PARAMS ((struct _reent *, size_t, size_t));
+extern _PTR _memalign_r (struct _reent *, size_t, size_t);
 #endif
 
-extern struct mallinfo mallinfo _PARAMS ((void));
+extern struct mallinfo mallinfo (void);
 #ifdef __CYGWIN__
 #undef _mallinfo_r
 #define _mallinfo_r(r) mallinfo ()
 #else
-extern struct mallinfo _mallinfo_r _PARAMS ((struct _reent *));
+extern struct mallinfo _mallinfo_r (struct _reent *);
 #endif
 
-extern void malloc_stats _PARAMS ((void));
+extern void malloc_stats (void);
 #ifdef __CYGWIN__
 #undef _malloc_stats_r
 #define _malloc_stats_r(r) malloc_stats ()
 #else
-extern void _malloc_stats_r _PARAMS ((struct _reent *));
+extern void _malloc_stats_r (struct _reent *);
 #endif
 
-extern int mallopt _PARAMS ((int, int));
+extern int mallopt (int, int);
 #ifdef __CYGWIN__
 #undef _mallopt_r
 #define _mallopt_r(i1, i2) mallopt (i1, i2)
 #else
-extern int _mallopt_r _PARAMS ((struct _reent *, int, int));
+extern int _mallopt_r (struct _reent *, int, int);
 #endif
 
-extern size_t malloc_usable_size _PARAMS ((_PTR));
+extern size_t malloc_usable_size (_PTR);
 #ifdef __CYGWIN__
 #undef _malloc_usable_size_r
 #define _malloc_usable_size_r(r, p) malloc_usable_size (p)
 #else
-extern size_t _malloc_usable_size_r _PARAMS ((struct _reent *, _PTR));
+extern size_t _malloc_usable_size_r (struct _reent *, _PTR);
 #endif
 
 /* These aren't too useful on an embedded system, but we define them
    anyhow.  */
 
-extern _PTR valloc _PARAMS ((size_t));
+extern _PTR valloc (size_t);
 #ifdef __CYGWIN__
 #undef _valloc_r
 #define _valloc_r(r, s) valloc (s)
 #else
-extern _PTR _valloc_r _PARAMS ((struct _reent *, size_t));
+extern _PTR _valloc_r (struct _reent *, size_t);
 #endif
 
-extern _PTR pvalloc _PARAMS ((size_t));
+extern _PTR pvalloc (size_t);
 #ifdef __CYGWIN__
 #undef _pvalloc_r
 #define _pvalloc_r(r, s) pvalloc (s)
 #else
-extern _PTR _pvalloc_r _PARAMS ((struct _reent *, size_t));
+extern _PTR _pvalloc_r (struct _reent *, size_t);
 #endif
 
-extern int malloc_trim _PARAMS ((size_t));
+extern int malloc_trim (size_t);
 #ifdef __CYGWIN__
 #undef _malloc_trim_r
 #define _malloc_trim_r(r, s) malloc_trim (s)
 #else
-extern int _malloc_trim_r _PARAMS ((struct _reent *, size_t));
+extern int _malloc_trim_r (struct _reent *, size_t);
 #endif
 
 /* A compatibility routine for an earlier version of the allocator.  */
 
-extern _VOID mstats _PARAMS ((char *));
+extern _VOID mstats (char *);
 #ifdef __CYGWIN__
 #undef _mstats_r
 #define _mstats_r(r, p) mstats (p)
 #else
-extern _VOID _mstats_r _PARAMS ((struct _reent *, char *));
+extern _VOID _mstats_r (struct _reent *, char *);
 #endif
 
 /* SVID2/XPG mallopt options */
@@ -159,7 +159,7 @@  extern _VOID _mstats_r _PARAMS ((struct _reent *, char *));
 
 #ifndef __CYGWIN__
 /* Some systems provide this, so do too for compatibility.  */
-extern void cfree _PARAMS ((_PTR));
+extern void cfree (_PTR);
 #endif /* __CYGWIN__ */
 
 #ifdef __cplusplus
diff --git a/newlib/libc/include/math.h b/newlib/libc/include/math.h
index 2a322ee26..893a5d064 100644
--- a/newlib/libc/include/math.h
+++ b/newlib/libc/include/math.h
@@ -83,54 +83,54 @@  _BEGIN_STD_C
 /* Reentrant ANSI C functions.  */
 
 #ifndef __math_68881
-extern double atan _PARAMS((double));
-extern double cos _PARAMS((double));
-extern double sin _PARAMS((double));
-extern double tan _PARAMS((double));
-extern double tanh _PARAMS((double));
-extern double frexp _PARAMS((double, int *));
-extern double modf _PARAMS((double, double *));
-extern double ceil _PARAMS((double));
-extern double fabs _PARAMS((double));
-extern double floor _PARAMS((double));
+extern double atan (double);
+extern double cos (double);
+extern double sin (double);
+extern double tan (double);
+extern double tanh (double);
+extern double frexp (double, int *);
+extern double modf (double, double *);
+extern double ceil (double);
+extern double fabs (double);
+extern double floor (double);
 #endif /* ! defined (__math_68881) */
 
 /* Non reentrant ANSI C functions.  */
 
 #ifndef _REENT_ONLY
 #ifndef __math_68881
-extern double acos _PARAMS((double));
-extern double asin _PARAMS((double));
-extern double atan2 _PARAMS((double, double));
-extern double cosh _PARAMS((double));
-extern double sinh _PARAMS((double));
-extern double exp _PARAMS((double));
-extern double ldexp _PARAMS((double, int));
-extern double log _PARAMS((double));
-extern double log10 _PARAMS((double));
-extern double pow _PARAMS((double, double));
-extern double sqrt _PARAMS((double));
-extern double fmod _PARAMS((double, double));
+extern double acos (double);
+extern double asin (double);
+extern double atan2 (double, double);
+extern double cosh (double);
+extern double sinh (double);
+extern double exp (double);
+extern double ldexp (double, int);
+extern double log (double);
+extern double log10 (double);
+extern double pow (double, double);
+extern double sqrt (double);
+extern double fmod (double, double);
 #endif /* ! defined (__math_68881) */
 #endif /* ! defined (_REENT_ONLY) */
 
 #if __MISC_VISIBLE
-extern int finite _PARAMS((double));
-extern int finitef _PARAMS((float));
-extern int finitel _PARAMS((long double));
-extern int isinff _PARAMS((float));
-extern int isnanf _PARAMS((float));
+extern int finite (double);
+extern int finitef (float);
+extern int finitel (long double);
+extern int isinff (float);
+extern int isnanf (float);
 #ifdef __CYGWIN__ /* not implemented in newlib yet */
-extern int isinfl _PARAMS((long double));
-extern int isnanl _PARAMS((long double));
+extern int isinfl (long double);
+extern int isnanl (long double);
 #endif
 #if !defined(__cplusplus) || __cplusplus < 201103L
-extern int isinf _PARAMS((double));
+extern int isinf (double);
 #endif
 #endif /* __MISC_VISIBLE */
 #if (__MISC_VISIBLE || (__XSI_VISIBLE && __XSI_VISIBLE < 600)) \
   && (!defined(__cplusplus) || __cplusplus < 201103L)
-extern int isnan _PARAMS((double));
+extern int isnan (double);
 #endif
 
 #if __ISO_C_VISIBLE >= 1999
@@ -287,128 +287,128 @@  extern int __signbitd (double x);
 
 /* Non ANSI double precision functions.  */
 
-extern double infinity _PARAMS((void));
-extern double nan _PARAMS((const char *));
-extern double copysign _PARAMS((double, double));
-extern double logb _PARAMS((double));
-extern int ilogb _PARAMS((double));
-
-extern double asinh _PARAMS((double));
-extern double cbrt _PARAMS((double));
-extern double nextafter _PARAMS((double, double));
-extern double rint _PARAMS((double));
-extern double scalbn _PARAMS((double, int));
-
-extern double exp2 _PARAMS((double));
-extern double scalbln _PARAMS((double, long int));
-extern double tgamma _PARAMS((double));
-extern double nearbyint _PARAMS((double));
-extern long int lrint _PARAMS((double));
-extern long long int llrint _PARAMS((double));
-extern double round _PARAMS((double));
-extern long int lround _PARAMS((double));
-extern long long int llround _PARAMS((double));
-extern double trunc _PARAMS((double));
-extern double remquo _PARAMS((double, double, int *));
-extern double fdim _PARAMS((double, double));
-extern double fmax _PARAMS((double, double));
-extern double fmin _PARAMS((double, double));
-extern double fma _PARAMS((double, double, double));
+extern double infinity (void);
+extern double nan (const char *);
+extern double copysign (double, double);
+extern double logb (double);
+extern int ilogb (double);
+
+extern double asinh (double);
+extern double cbrt (double);
+extern double nextafter (double, double);
+extern double rint (double);
+extern double scalbn (double, int);
+
+extern double exp2 (double);
+extern double scalbln (double, long int);
+extern double tgamma (double);
+extern double nearbyint (double);
+extern long int lrint (double);
+extern long long int llrint (double);
+extern double round (double);
+extern long int lround (double);
+extern long long int llround (double);
+extern double trunc (double);
+extern double remquo (double, double, int *);
+extern double fdim (double, double);
+extern double fmax (double, double);
+extern double fmin (double, double);
+extern double fma (double, double, double);
 
 #ifndef __math_68881
-extern double log1p _PARAMS((double));
-extern double expm1 _PARAMS((double));
+extern double log1p (double);
+extern double expm1 (double);
 #endif /* ! defined (__math_68881) */
 
 #ifndef _REENT_ONLY
-extern double acosh _PARAMS((double));
-extern double atanh _PARAMS((double));
-extern double remainder _PARAMS((double, double));
-extern double gamma _PARAMS((double));
-extern double lgamma _PARAMS((double));
-extern double erf _PARAMS((double));
-extern double erfc _PARAMS((double));
-extern double log2 _PARAMS((double));
+extern double acosh (double);
+extern double atanh (double);
+extern double remainder (double, double);
+extern double gamma (double);
+extern double lgamma (double);
+extern double erf (double);
+extern double erfc (double);
+extern double log2 (double);
 #if !defined(__cplusplus)
 #define log2(x) (log (x) / _M_LN2)
 #endif
 
 #ifndef __math_68881
-extern double hypot _PARAMS((double, double));
+extern double hypot (double, double);
 #endif
 
 #endif /* ! defined (_REENT_ONLY) */
 
 /* Single precision versions of ANSI functions.  */
 
-extern float atanf _PARAMS((float));
-extern float cosf _PARAMS((float));
-extern float sinf _PARAMS((float));
-extern float tanf _PARAMS((float));
-extern float tanhf _PARAMS((float));
-extern float frexpf _PARAMS((float, int *));
-extern float modff _PARAMS((float, float *));
-extern float ceilf _PARAMS((float));
-extern float fabsf _PARAMS((float));
-extern float floorf _PARAMS((float));
+extern float atanf (float);
+extern float cosf (float);
+extern float sinf (float);
+extern float tanf (float);
+extern float tanhf (float);
+extern float frexpf (float, int *);
+extern float modff (float, float *);
+extern float ceilf (float);
+extern float fabsf (float);
+extern float floorf (float);
 
 #ifndef _REENT_ONLY
-extern float acosf _PARAMS((float));
-extern float asinf _PARAMS((float));
-extern float atan2f _PARAMS((float, float));
-extern float coshf _PARAMS((float));
-extern float sinhf _PARAMS((float));
-extern float expf _PARAMS((float));
-extern float ldexpf _PARAMS((float, int));
-extern float logf _PARAMS((float));
-extern float log10f _PARAMS((float));
-extern float powf _PARAMS((float, float));
-extern float sqrtf _PARAMS((float));
-extern float fmodf _PARAMS((float, float));
+extern float acosf (float);
+extern float asinf (float);
+extern float atan2f (float, float);
+extern float coshf (float);
+extern float sinhf (float);
+extern float expf (float);
+extern float ldexpf (float, int);
+extern float logf (float);
+extern float log10f (float);
+extern float powf (float, float);
+extern float sqrtf (float);
+extern float fmodf (float, float);
 #endif /* ! defined (_REENT_ONLY) */
 
 /* Other single precision functions.  */
 
-extern float exp2f _PARAMS((float));
-extern float scalblnf _PARAMS((float, long int));
-extern float tgammaf _PARAMS((float));
-extern float nearbyintf _PARAMS((float));
-extern long int lrintf _PARAMS((float));
-extern long long int llrintf _PARAMS((float));
-extern float roundf _PARAMS((float));
-extern long int lroundf _PARAMS((float));
-extern long long int llroundf _PARAMS((float));
-extern float truncf _PARAMS((float));
-extern float remquof _PARAMS((float, float, int *));
-extern float fdimf _PARAMS((float, float));
-extern float fmaxf _PARAMS((float, float));
-extern float fminf _PARAMS((float, float));
-extern float fmaf _PARAMS((float, float, float));
-
-extern float infinityf _PARAMS((void));
-extern float nanf _PARAMS((const char *));
-extern float copysignf _PARAMS((float, float));
-extern float logbf _PARAMS((float));
-extern int ilogbf _PARAMS((float));
-
-extern float asinhf _PARAMS((float));
-extern float cbrtf _PARAMS((float));
-extern float nextafterf _PARAMS((float, float));
-extern float rintf _PARAMS((float));
-extern float scalbnf _PARAMS((float, int));
-extern float log1pf _PARAMS((float));
-extern float expm1f _PARAMS((float));
+extern float exp2f (float);
+extern float scalblnf (float, long int);
+extern float tgammaf (float);
+extern float nearbyintf (float);
+extern long int lrintf (float);
+extern long long int llrintf (float);
+extern float roundf (float);
+extern long int lroundf (float);
+extern long long int llroundf (float);
+extern float truncf (float);
+extern float remquof (float, float, int *);
+extern float fdimf (float, float);
+extern float fmaxf (float, float);
+extern float fminf (float, float);
+extern float fmaf (float, float, float);
+
+extern float infinityf (void);
+extern float nanf (const char *);
+extern float copysignf (float, float);
+extern float logbf (float);
+extern int ilogbf (float);
+
+extern float asinhf (float);
+extern float cbrtf (float);
+extern float nextafterf (float, float);
+extern float rintf (float);
+extern float scalbnf (float, int);
+extern float log1pf (float);
+extern float expm1f (float);
 
 #ifndef _REENT_ONLY
-extern float acoshf _PARAMS((float));
-extern float atanhf _PARAMS((float));
-extern float remainderf _PARAMS((float, float));
-extern float gammaf _PARAMS((float));
-extern float lgammaf _PARAMS((float));
-extern float erff _PARAMS((float));
-extern float erfcf _PARAMS((float));
-extern float log2f _PARAMS((float));
-extern float hypotf _PARAMS((float, float));
+extern float acoshf (float);
+extern float atanhf (float);
+extern float remainderf (float, float);
+extern float gammaf (float);
+extern float lgammaf (float);
+extern float erff (float);
+extern float erfcf (float);
+extern float log2f (float);
+extern float hypotf (float, float);
 #endif /* ! defined (_REENT_ONLY) */
 
 /* Newlib doesn't fully support long double math functions so far.
@@ -419,141 +419,141 @@  extern float hypotf _PARAMS((float, float));
 #if defined (_LDBL_EQ_DBL) || defined (__CYGWIN__)
 /* Reentrant ANSI C functions.  */
 #ifndef __math_68881
-extern long double atanl _PARAMS((long double));
-extern long double cosl _PARAMS((long double));
-extern long double sinl _PARAMS((long double));
-extern long double tanl _PARAMS((long double));
-extern long double tanhl _PARAMS((long double));
-extern long double frexpl _PARAMS((long double, int *));
-extern long double modfl _PARAMS((long double, long double *));
-extern long double ceill _PARAMS((long double));
-extern long double fabsl _PARAMS((long double));
-extern long double floorl _PARAMS((long double));
-extern long double log1pl _PARAMS((long double));
-extern long double expm1l _PARAMS((long double));
+extern long double atanl (long double);
+extern long double cosl (long double);
+extern long double sinl (long double);
+extern long double tanl (long double);
+extern long double tanhl (long double);
+extern long double frexpl (long double, int *);
+extern long double modfl (long double, long double *);
+extern long double ceill (long double);
+extern long double fabsl (long double);
+extern long double floorl (long double);
+extern long double log1pl (long double);
+extern long double expm1l (long double);
 #endif /* ! defined (__math_68881) */
 /* Non reentrant ANSI C functions.  */
 #ifndef _REENT_ONLY
 #ifndef __math_68881
-extern long double acosl _PARAMS((long double));
-extern long double asinl _PARAMS((long double));
-extern long double atan2l _PARAMS((long double, long double));
-extern long double coshl _PARAMS((long double));
-extern long double sinhl _PARAMS((long double));
-extern long double expl _PARAMS((long double));
-extern long double ldexpl _PARAMS((long double, int));
-extern long double logl _PARAMS((long double));
-extern long double log10l _PARAMS((long double));
-extern long double powl _PARAMS((long double, long double));
-extern long double sqrtl _PARAMS((long double));
-extern long double fmodl _PARAMS((long double, long double));
-extern long double hypotl _PARAMS((long double, long double));
+extern long double acosl (long double);
+extern long double asinl (long double);
+extern long double atan2l (long double, long double);
+extern long double coshl (long double);
+extern long double sinhl (long double);
+extern long double expl (long double);
+extern long double ldexpl (long double, int);
+extern long double logl (long double);
+extern long double log10l (long double);
+extern long double powl (long double, long double);
+extern long double sqrtl (long double);
+extern long double fmodl (long double, long double);
+extern long double hypotl (long double, long double);
 #endif /* ! defined (__math_68881) */
 #endif /* ! defined (_REENT_ONLY) */
-extern long double copysignl _PARAMS((long double, long double));
-extern long double nanl _PARAMS((const char *));
-extern int ilogbl _PARAMS((long double));
-extern long double asinhl _PARAMS((long double));
-extern long double cbrtl _PARAMS((long double));
-extern long double nextafterl _PARAMS((long double, long double));
-extern float nexttowardf _PARAMS((float, long double));
-extern double nexttoward _PARAMS((double, long double));
-extern long double nexttowardl _PARAMS((long double, long double));
-extern long double logbl _PARAMS((long double));
-extern long double log2l _PARAMS((long double));
-extern long double rintl _PARAMS((long double));
-extern long double scalbnl _PARAMS((long double, int));
-extern long double exp2l _PARAMS((long double));
-extern long double scalblnl _PARAMS((long double, long));
-extern long double tgammal _PARAMS((long double));
-extern long double nearbyintl _PARAMS((long double));
-extern long int lrintl _PARAMS((long double));
-extern long long int llrintl _PARAMS((long double));
-extern long double roundl _PARAMS((long double));
-extern long lroundl _PARAMS((long double));
-extern long long int llroundl _PARAMS((long double));
-extern long double truncl _PARAMS((long double));
-extern long double remquol _PARAMS((long double, long double, int *));
-extern long double fdiml _PARAMS((long double, long double));
-extern long double fmaxl _PARAMS((long double, long double));
-extern long double fminl _PARAMS((long double, long double));
-extern long double fmal _PARAMS((long double, long double, long double));
+extern long double copysignl (long double, long double);
+extern long double nanl (const char *);
+extern int ilogbl (long double);
+extern long double asinhl (long double);
+extern long double cbrtl (long double);
+extern long double nextafterl (long double, long double);
+extern float nexttowardf (float, long double);
+extern double nexttoward (double, long double);
+extern long double nexttowardl (long double, long double);
+extern long double logbl (long double);
+extern long double log2l (long double);
+extern long double rintl (long double);
+extern long double scalbnl (long double, int);
+extern long double exp2l (long double);
+extern long double scalblnl (long double, long);
+extern long double tgammal (long double);
+extern long double nearbyintl (long double);
+extern long int lrintl (long double);
+extern long long int llrintl (long double);
+extern long double roundl (long double);
+extern long lroundl (long double);
+extern long long int llroundl (long double);
+extern long double truncl (long double);
+extern long double remquol (long double, long double, int *);
+extern long double fdiml (long double, long double);
+extern long double fmaxl (long double, long double);
+extern long double fminl (long double, long double);
+extern long double fmal (long double, long double, long double);
 #ifndef _REENT_ONLY
-extern long double acoshl _PARAMS((long double));
-extern long double atanhl _PARAMS((long double));
-extern long double remainderl _PARAMS((long double, long double));
-extern long double lgammal _PARAMS((long double));
-extern long double erfl _PARAMS((long double));
-extern long double erfcl _PARAMS((long double));
+extern long double acoshl (long double);
+extern long double atanhl (long double);
+extern long double remainderl (long double, long double);
+extern long double lgammal (long double);
+extern long double erfl (long double);
+extern long double erfcl (long double);
 #endif /* ! defined (_REENT_ONLY) */
 #else /* !_LDBL_EQ_DBL && !__CYGWIN__ */
-extern long double hypotl _PARAMS((long double, long double));
-extern long double sqrtl _PARAMS((long double));
+extern long double hypotl (long double, long double);
+extern long double sqrtl (long double);
 #ifdef __i386__
 /* Other long double precision functions.  */
-extern _LONG_DOUBLE rintl _PARAMS((_LONG_DOUBLE));
-extern long int lrintl _PARAMS((_LONG_DOUBLE));
-extern long long int llrintl _PARAMS((_LONG_DOUBLE));
+extern _LONG_DOUBLE rintl (_LONG_DOUBLE);
+extern long int lrintl (_LONG_DOUBLE);
+extern long long int llrintl (_LONG_DOUBLE);
 #endif /* __i386__ */
 #endif /* !_LDBL_EQ_DBL && !__CYGWIN__ */
 
 #endif /* __ISO_C_VISIBLE >= 1999 */
 
 #if __MISC_VISIBLE
-extern double drem _PARAMS((double, double));
-extern float dremf _PARAMS((float, float));
+extern double drem (double, double);
+extern float dremf (float, float);
 #ifdef __CYGWIN__
-extern float dreml _PARAMS((long double, long double));
+extern float dreml (long double, long double);
 #endif /* __CYGWIN__ */
-extern double gamma_r _PARAMS((double, int *));
-extern double lgamma_r _PARAMS((double, int *));
-extern float gammaf_r _PARAMS((float, int *));
-extern float lgammaf_r _PARAMS((float, int *));
+extern double gamma_r (double, int *);
+extern double lgamma_r (double, int *);
+extern float gammaf_r (float, int *);
+extern float lgammaf_r (float, int *);
 #endif
 
 #if __MISC_VISIBLE || __XSI_VISIBLE
-extern double y0 _PARAMS((double));
-extern double y1 _PARAMS((double));
-extern double yn _PARAMS((int, double));
-extern double j0 _PARAMS((double));
-extern double j1 _PARAMS((double));
-extern double jn _PARAMS((int, double));
+extern double y0 (double);
+extern double y1 (double);
+extern double yn (int, double);
+extern double j0 (double);
+extern double j1 (double);
+extern double jn (int, double);
 #endif
 
 #if __MISC_VISIBLE || __XSI_VISIBLE >= 600
-extern float y0f _PARAMS((float));
-extern float y1f _PARAMS((float));
-extern float ynf _PARAMS((int, float));
-extern float j0f _PARAMS((float));
-extern float j1f _PARAMS((float));
-extern float jnf _PARAMS((int, float));
+extern float y0f (float);
+extern float y1f (float);
+extern float ynf (int, float);
+extern float j0f (float);
+extern float j1f (float);
+extern float jnf (int, float);
 #endif
 
 /* GNU extensions */
 #if __GNU_VISIBLE
-extern void sincos _PARAMS((double, double *, double *));
-extern void sincosf _PARAMS((float, float *, float *));
+extern void sincos (double, double *, double *);
+extern void sincosf (float, float *, float *);
 #ifdef __CYGWIN__
-extern void sincosl _PARAMS((long double, long double *, long double *));
+extern void sincosl (long double, long double *, long double *);
 #endif /* __CYGWIN__ */
 # ifndef exp10
-extern double exp10 _PARAMS((double));
+extern double exp10 (double);
 # endif
 # ifndef pow10
-extern double pow10 _PARAMS((double));
+extern double pow10 (double);
 # endif
 # ifndef exp10f
-extern float exp10f _PARAMS((float));
+extern float exp10f (float);
 # endif
 # ifndef pow10f
-extern float pow10f _PARAMS((float));
+extern float pow10f (float);
 # endif
 #ifdef __CYGWIN__
 # ifndef exp10l
-extern float exp10l _PARAMS((float));
+extern float exp10l (float);
 # endif
 # ifndef pow10l
-extern float pow10l _PARAMS((float));
+extern float pow10l (float);
 # endif
 #endif /* __CYGWIN__ */
 #endif /* __GNU_VISIBLE */
@@ -562,7 +562,7 @@  extern float pow10l _PARAMS((float));
 /* The gamma functions use a global variable, signgam.  */
 #ifndef _REENT_ONLY
 #define signgam (*__signgam())
-extern int *__signgam _PARAMS((void));
+extern int *__signgam (void);
 #endif /* ! defined (_REENT_ONLY) */
 
 #define __signgam_r(ptr) _REENT_SIGNGAM(ptr)
@@ -587,9 +587,9 @@  struct exception
 };
 
 #ifdef __cplusplus
-extern int matherr _PARAMS((struct __exception *e));
+extern int matherr (struct __exception *e);
 #else
-extern int matherr _PARAMS((struct exception *e));
+extern int matherr (struct exception *e);
 #endif
 
 /* Values for the type field of struct exception.  */
diff --git a/newlib/libc/include/reent.h b/newlib/libc/include/reent.h
index b7664b0b9..2b01fbe8f 100644
--- a/newlib/libc/include/reent.h
+++ b/newlib/libc/include/reent.h
@@ -136,29 +136,29 @@  struct timezone;
 #else
 /* Reentrant versions of system calls.  */
 
-extern int _close_r _PARAMS ((struct _reent *, int));
-extern int _execve_r _PARAMS ((struct _reent *, const char *, char *const *, char *const *));
-extern int _fcntl_r _PARAMS ((struct _reent *, int, int, int));
-extern int _fork_r _PARAMS ((struct _reent *));
-extern int _fstat_r _PARAMS ((struct _reent *, int, struct stat *));
-extern int _getpid_r _PARAMS ((struct _reent *));
-extern int _isatty_r _PARAMS ((struct _reent *, int));
-extern int _kill_r _PARAMS ((struct _reent *, int, int));
-extern int _link_r _PARAMS ((struct _reent *, const char *, const char *));
-extern _off_t _lseek_r _PARAMS ((struct _reent *, int, _off_t, int));
-extern int _mkdir_r _PARAMS ((struct _reent *, const char *, int));
-extern int _open_r _PARAMS ((struct _reent *, const char *, int, int));
-extern _ssize_t _read_r _PARAMS ((struct _reent *, int, void *, size_t));
-extern int _rename_r _PARAMS ((struct _reent *, const char *, const char *));
-extern void *_sbrk_r _PARAMS ((struct _reent *, ptrdiff_t));
-extern int _stat_r _PARAMS ((struct _reent *, const char *, struct stat *));
-extern _CLOCK_T_ _times_r _PARAMS ((struct _reent *, struct tms *));
-extern int _unlink_r _PARAMS ((struct _reent *, const char *));
-extern int _wait_r _PARAMS ((struct _reent *, int *));
-extern _ssize_t _write_r _PARAMS ((struct _reent *, int, const void *, size_t));
+extern int _close_r (struct _reent *, int);
+extern int _execve_r (struct _reent *, const char *, char *const *, char *const *);
+extern int _fcntl_r (struct _reent *, int, int, int);
+extern int _fork_r (struct _reent *);
+extern int _fstat_r (struct _reent *, int, struct stat *);
+extern int _getpid_r (struct _reent *);
+extern int _isatty_r (struct _reent *, int);
+extern int _kill_r (struct _reent *, int, int);
+extern int _link_r (struct _reent *, const char *, const char *);
+extern _off_t _lseek_r (struct _reent *, int, _off_t, int);
+extern int _mkdir_r (struct _reent *, const char *, int);
+extern int _open_r (struct _reent *, const char *, int, int);
+extern _ssize_t _read_r (struct _reent *, int, void *, size_t);
+extern int _rename_r (struct _reent *, const char *, const char *);
+extern void *_sbrk_r (struct _reent *, ptrdiff_t);
+extern int _stat_r (struct _reent *, const char *, struct stat *);
+extern _CLOCK_T_ _times_r (struct _reent *, struct tms *);
+extern int _unlink_r (struct _reent *, const char *);
+extern int _wait_r (struct _reent *, int *);
+extern _ssize_t _write_r (struct _reent *, int, const void *, size_t);
 
 /* This one is not guaranteed to be available on all targets.  */
-extern int _gettimeofday_r _PARAMS ((struct _reent *, struct timeval *__tp, void *__tzp));
+extern int _gettimeofday_r (struct _reent *, struct timeval *__tp, void *__tzp);
 
 #ifdef __LARGE64_FILES
 
@@ -168,10 +168,10 @@  extern int _gettimeofday_r _PARAMS ((struct _reent *, struct timeval *__tp, void
 #endif
 struct stat64;
 
-extern _off64_t _lseek64_r _PARAMS ((struct _reent *, int, _off64_t, int));
-extern int _fstat64_r _PARAMS ((struct _reent *, int, struct stat64 *));
-extern int _open64_r _PARAMS ((struct _reent *, const char *, int, int));
-extern int _stat64_r _PARAMS ((struct _reent *, const char *, struct stat64 *));
+extern _off64_t _lseek64_r (struct _reent *, int, _off64_t, int);
+extern int _fstat64_r (struct _reent *, int, struct stat64 *);
+extern int _open64_r (struct _reent *, const char *, int, int);
+extern int _stat64_r (struct _reent *, const char *, struct stat64 *);
 
 /* Don't pollute namespace if not building newlib. */
 #if defined (__CYGWIN__) && !defined (_COMPILING_NEWLIB)
diff --git a/newlib/libc/include/sys/_default_fcntl.h b/newlib/libc/include/sys/_default_fcntl.h
index 006e4efd5..33b462285 100644
--- a/newlib/libc/include/sys/_default_fcntl.h
+++ b/newlib/libc/include/sys/_default_fcntl.h
@@ -199,27 +199,27 @@  struct eflock {
 #include <sys/types.h>
 #include <sys/stat.h>		/* sigh. for the mode bits for open/creat */
 
-extern int open _PARAMS ((const char *, int, ...));
+extern int open (const char *, int, ...);
 #if __ATFILE_VISIBLE
-extern int openat _PARAMS ((int, const char *, int, ...));
+extern int openat (int, const char *, int, ...);
 #endif
-extern int creat _PARAMS ((const char *, mode_t));
-extern int fcntl _PARAMS ((int, int, ...));
+extern int creat (const char *, mode_t);
+extern int fcntl (int, int, ...);
 #if __BSD_VISIBLE
-extern int flock _PARAMS ((int, int));
+extern int flock (int, int);
 #endif
 #if __GNU_VISIBLE
 #include <sys/time.h>
-extern int futimesat _PARAMS ((int, const char *, const struct timeval *));
+extern int futimesat (int, const char *, const struct timeval *);
 #endif
 
 /* Provide _<systemcall> prototypes for functions provided by some versions
    of newlib.  */
 #ifdef _COMPILING_NEWLIB
-extern int _open _PARAMS ((const char *, int, ...));
-extern int _fcntl _PARAMS ((int, int, ...));
+extern int _open (const char *, int, ...);
+extern int _fcntl (int, int, ...);
 #ifdef __LARGE64_FILES
-extern int _open64 _PARAMS ((const char *, int, ...));
+extern int _open64 (const char *, int, ...);
 #endif
 #endif
 
diff --git a/newlib/libc/include/sys/errno.h b/newlib/libc/include/sys/errno.h
index 89fe1e052..025b461d4 100644
--- a/newlib/libc/include/sys/errno.h
+++ b/newlib/libc/include/sys/errno.h
@@ -12,7 +12,7 @@  extern "C" {
 
 #ifndef _REENT_ONLY
 #define errno (*__errno())
-extern int *__errno _PARAMS ((void));
+extern int *__errno (void);
 #endif
 
 /* Please don't use these variables directly.
diff --git a/newlib/libc/include/sys/reent.h b/newlib/libc/include/sys/reent.h
index 061f580fb..aa352dc08 100644
--- a/newlib/libc/include/sys/reent.h
+++ b/newlib/libc/include/sys/reent.h
@@ -775,7 +775,7 @@  extern __FILE __sf[3];
 extern struct _reent *_impure_ptr __ATTRIBUTE_IMPURE_PTR__;
 extern struct _reent *const _global_impure_ptr __ATTRIBUTE_IMPURE_PTR__;
 
-void _reclaim_reent _PARAMS ((struct _reent *));
+void _reclaim_reent (struct _reent *);
 
 /* #define _REENT_ONLY define this to get only reentrant routines */
 
diff --git a/newlib/libc/include/sys/timeb.h b/newlib/libc/include/sys/timeb.h
index 793b48143..ccf664974 100644
--- a/newlib/libc/include/sys/timeb.h
+++ b/newlib/libc/include/sys/timeb.h
@@ -31,7 +31,7 @@  struct timeb
   short dstflag;
 };
 
-extern int ftime _PARAMS ((struct timeb *));
+extern int ftime (struct timeb *);
 
 #ifdef __cplusplus
 }
diff --git a/newlib/libc/machine/cris/sys/errno.h b/newlib/libc/machine/cris/sys/errno.h
index dc4ffe28c..3d573015d 100644
--- a/newlib/libc/machine/cris/sys/errno.h
+++ b/newlib/libc/machine/cris/sys/errno.h
@@ -16,7 +16,7 @@  extern "C" {
 
 #ifndef _REENT_ONLY
 #define errno (*__errno())
-extern int *__errno _PARAMS ((void));
+extern int *__errno (void);
 #endif
 
 /* Please don't use these variables directly.
diff --git a/newlib/libc/machine/cris/sys/fcntl.h b/newlib/libc/machine/cris/sys/fcntl.h
index 6017a190f..7630a9874 100644
--- a/newlib/libc/machine/cris/sys/fcntl.h
+++ b/newlib/libc/machine/cris/sys/fcntl.h
@@ -143,17 +143,17 @@  struct eflock {
 #include <sys/types.h>
 #include <sys/stat.h>		/* sigh. for the mode bits for open/creat */
 
-extern int open _PARAMS ((const char *, int, ...));
-extern int creat _PARAMS ((const char *, mode_t));
-extern int fcntl _PARAMS ((int, int, ...));
+extern int open (const char *, int, ...);
+extern int creat (const char *, mode_t);
+extern int fcntl (int, int, ...);
 
 /* Provide _<systemcall> prototypes for functions provided by some versions
    of newlib.  */
 #ifdef _COMPILING_NEWLIB
-extern int _open _PARAMS ((const char *, int, ...));
-extern int _fcntl _PARAMS ((int, int, ...));
+extern int _open (const char *, int, ...);
+extern int _fcntl (int, int, ...);
 #ifdef __LARGE64_FILES
-extern int _open64 _PARAMS ((const char *, int, ...));
+extern int _open64 (const char *, int, ...);
 #endif
 #endif
 
diff --git a/newlib/libc/machine/powerpc/ufix64toa.c b/newlib/libc/machine/powerpc/ufix64toa.c
index 125ab67fa..bf13894e6 100644
--- a/newlib/libc/machine/powerpc/ufix64toa.c
+++ b/newlib/libc/machine/powerpc/ufix64toa.c
@@ -15,8 +15,8 @@ 
 #include <reent.h>
 #include "fix64.h"
 
-extern char *_simdldtoa_r _PARAMS((struct _reent *, LONG_DOUBLE_UNION *, int,
-			       int, int *, int *, char **));
+extern char *_simdldtoa_r (struct _reent *, LONG_DOUBLE_UNION *, int,
+			       int, int *, int *, char **);
 
 /*
  * Convert an unsigned fixed-point 64-bit value to string.
diff --git a/newlib/libc/machine/powerpc/vfprintf.c b/newlib/libc/machine/powerpc/vfprintf.c
index e926a7340..1615d4b25 100644
--- a/newlib/libc/machine/powerpc/vfprintf.c
+++ b/newlib/libc/machine/powerpc/vfprintf.c
@@ -223,16 +223,16 @@  __sbprintf_r(rptr, fp, fmt, ap)
 #define	DEFPREC		6
 
 #ifdef _NO_LONGDBL
-static char *cvt _PARAMS((struct _reent *, double, int, int, char *, int *, int, int *));
+static char *cvt (struct _reent *, double, int, int, char *, int *, int, int *);
 #else
-static char *cvt _PARAMS((struct _reent *, _LONG_DOUBLE, int, int, char *, int *, int, int *));
-extern int  _ldcheck _PARAMS((_LONG_DOUBLE *));
+static char *cvt (struct _reent *, _LONG_DOUBLE, int, int, char *, int *, int, int *);
+extern int  _ldcheck (_LONG_DOUBLE *);
 #endif
 
-static int exponent _PARAMS((char *, int, int));
+static int exponent (char *, int, int);
 
 #ifdef __SPE__
-static char *cvt_ufix64 _PARAMS((struct _reent *, unsigned long long, int,  int *, int *));
+static char *cvt_ufix64 (struct _reent *, unsigned long long, int,  int *, int *);
 #endif /* __SPE__ */
 
 #else /* no FLOATING_POINT */
@@ -1247,11 +1247,11 @@  error:
 #ifdef FLOATING_POINT
 
 #ifdef _NO_LONGDBL
-extern char *_dtoa_r _PARAMS((struct _reent *, double, int,
-			      int, int *, int *, char **));
+extern char *_dtoa_r (struct _reent *, double, int,
+			      int, int *, int *, char **);
 #else
-extern char *_ldtoa_r _PARAMS((struct _reent *, _LONG_DOUBLE, int,
-			      int, int *, int *, char **));
+extern char *_ldtoa_r (struct _reent *, _LONG_DOUBLE, int,
+			      int, int *, int *, char **);
 #undef word0
 #define word0(x) ldword0(x)
 #endif
@@ -1358,8 +1358,8 @@  exponent(p0, exp, fmtch)
 #endif /* FLOATING_POINT */
 
 #ifdef __SPE__
-extern char *_ufix64toa_r _PARAMS((struct _reent *, unsigned long long, int,
-			           int, int *, int *, char **));
+extern char *_ufix64toa_r (struct _reent *, unsigned long long, int,
+			           int, int *, int *, char **);
 static char *
 cvt_ufix64 (data, value, ndigits, decpt, length)
 	struct _reent *data;
diff --git a/newlib/libc/search/qsort.c b/newlib/libc/search/qsort.c
index e24a62a55..6c84b95b7 100644
--- a/newlib/libc/search/qsort.c
+++ b/newlib/libc/search/qsort.c
@@ -77,8 +77,8 @@  typedef int		 cmp_t(const void *, const void *, void *);
 #else
 typedef int		 cmp_t(const void *, const void *);
 #endif
-static inline char	*med3 _PARAMS((char *, char *, char *, cmp_t *, void *));
-static inline void	 swapfunc _PARAMS((char *, char *, int, int));
+static inline char	*med3 (char *, char *, char *, cmp_t *, void *);
+static inline void	 swapfunc (char *, char *, int, int);
 
 #define min(a, b)	(a) < (b) ? a : b
 
diff --git a/newlib/libc/stdio/nano-vfprintf_local.h b/newlib/libc/stdio/nano-vfprintf_local.h
index 51e1df815..f883741d2 100644
--- a/newlib/libc/stdio/nano-vfprintf_local.h
+++ b/newlib/libc/stdio/nano-vfprintf_local.h
@@ -88,8 +88,8 @@ 
 # define MAXEXPLEN		7
 # define DEFPREC		6
 
-extern char *_dtoa_r _PARAMS((struct _reent *, double, int,
-			      int, int *, int *, char **));
+extern char *_dtoa_r (struct _reent *, double, int,
+			      int, int *, int *, char **);
 
 # define _DTOA_R _dtoa_r
 # define FREXP frexp
diff --git a/newlib/libc/stdio/nano-vfscanf_i.c b/newlib/libc/stdio/nano-vfscanf_i.c
index aba74b0d8..fc8011717 100644
--- a/newlib/libc/stdio/nano-vfscanf_i.c
+++ b/newlib/libc/stdio/nano-vfscanf_i.c
@@ -95,7 +95,7 @@  _scanf_i (struct _reent *rptr,
 	  struct _scan_data_t *pdata,
 	  FILE *fp, va_list *ap)
 {
-#define CCFN_PARAMS	_PARAMS((struct _reent *, const char *, char **, int))
+#define CCFN_PARAMS	(struct _reent *, const char *, char **, int)
   /* Conversion function (strtol/strtoul).  */
   u_long (*ccfn)CCFN_PARAMS=0;
   char *p;
diff --git a/newlib/libc/stdio/vfprintf.c b/newlib/libc/stdio/vfprintf.c
index d574928ee..b9b17fe58 100644
--- a/newlib/libc/stdio/vfprintf.c
+++ b/newlib/libc/stdio/vfprintf.c
@@ -510,8 +510,8 @@  _DEFUN(__sbprintf, (rptr, fp, fmt, ap),
 
 # ifdef _NO_LONGDBL
 
-extern char *_dtoa_r _PARAMS((struct _reent *, double, int,
-			      int, int *, int *, char **));
+extern char *_dtoa_r (struct _reent *, double, int,
+			      int, int *, int *, char **);
 
 #  define _PRINTF_FLOAT_TYPE double
 #  define _DTOA_R _dtoa_r
@@ -519,8 +519,8 @@  extern char *_dtoa_r _PARAMS((struct _reent *, double, int,
 
 # else /* !_NO_LONGDBL */
 
-extern char *_ldtoa_r _PARAMS((struct _reent *, _LONG_DOUBLE, int,
-			      int, int *, int *, char **));
+extern char *_ldtoa_r (struct _reent *, _LONG_DOUBLE, int,
+			      int, int *, int *, char **);
 
 extern int _EXFUN(_ldcheck,(_LONG_DOUBLE *));
 
diff --git a/newlib/libc/stdio/vfscanf.c b/newlib/libc/stdio/vfscanf.c
index bf91dad35..38ef36ea5 100644
--- a/newlib/libc/stdio/vfscanf.c
+++ b/newlib/libc/stdio/vfscanf.c
@@ -554,7 +554,7 @@  _DEFUN(__SVFSCANF_R, (rptr, fp, fmt0, ap),
     while (0)
 #endif
 
-  #define CCFN_PARAMS	_PARAMS((struct _reent *, const char *, char **, int))
+  #define CCFN_PARAMS	(struct _reent *, const char *, char **, int)
   u_long (*ccfn)CCFN_PARAMS=0;	/* conversion function (strtol/strtoul) */
   char ccltab[256];		/* character class table for %[...] */
   char buf[BUF];		/* buffer for numeric conversions */
diff --git a/newlib/libc/stdio/vfwprintf.c b/newlib/libc/stdio/vfwprintf.c
index ad684a249..1054eb942 100644
--- a/newlib/libc/stdio/vfwprintf.c
+++ b/newlib/libc/stdio/vfwprintf.c
@@ -228,8 +228,8 @@  _DEFUN(__sbwprintf, (rptr, fp, fmt, ap),
 
 # ifdef _NO_LONGDBL
 
-extern char *_dtoa_r _PARAMS((struct _reent *, double, int,
-			      int, int *, int *, char **));
+extern char *_dtoa_r (struct _reent *, double, int,
+			      int, int *, int *, char **);
 
 #  define _PRINTF_FLOAT_TYPE double
 #  define _DTOA_R _dtoa_r
@@ -237,8 +237,8 @@  extern char *_dtoa_r _PARAMS((struct _reent *, double, int,
 
 # else /* !_NO_LONGDBL */
 
-extern char *_ldtoa_r _PARAMS((struct _reent *, _LONG_DOUBLE, int,
-			      int, int *, int *, char **));
+extern char *_ldtoa_r (struct _reent *, _LONG_DOUBLE, int,
+			      int, int *, int *, char **);
 
 extern int _EXFUN(_ldcheck,(_LONG_DOUBLE *));
 
diff --git a/newlib/libc/stdio/vfwscanf.c b/newlib/libc/stdio/vfwscanf.c
index 27b06232b..73d8f3209 100644
--- a/newlib/libc/stdio/vfwscanf.c
+++ b/newlib/libc/stdio/vfwscanf.c
@@ -138,7 +138,7 @@  C99, POSIX-1.2008
 #define _NO_LONGDBL
 #if defined _WANT_IO_LONG_DOUBLE && (LDBL_MANT_DIG > DBL_MANT_DIG)
 #undef _NO_LONGDBL
-extern _LONG_DOUBLE _wcstold_r _PARAMS((wchar_t *s, wchar_t **sptr));
+extern _LONG_DOUBLE _wcstold_r (wchar_t *s, wchar_t **sptr);
 #endif
 
 #include "floatio.h"
@@ -322,7 +322,7 @@  _DEFUN(_sungetwc_r, (data, fp, ch),
   return wc;
 }
 
-extern int __ssrefill_r _PARAMS ((struct _reent *ptr, register FILE * fp));
+extern int __ssrefill_r (struct _reent *ptr, register FILE * fp);
 
 static size_t
 _DEFUN(_sfgetwc_r, (ptr, fp),
@@ -367,7 +367,7 @@  _DEFUN(__SVFWSCANF_R, (rptr, fp, fmt0, ap),
 
   mbstate_t mbs;                /* value to keep track of multibyte state */
 
-  #define CCFN_PARAMS	_PARAMS((struct _reent *, const wchar_t *, wchar_t **, int))
+  #define CCFN_PARAMS	(struct _reent *, const wchar_t *, wchar_t **, int)
   unsigned long (*ccfn)CCFN_PARAMS=0;	/* conversion function (wcstol/wcstoul) */
   wchar_t buf[BUF];		/* buffer for numeric conversions */
   const wchar_t *ccls;          /* character class start */
diff --git a/newlib/libc/stdlib/atexit.h b/newlib/libc/stdlib/atexit.h
index e37a146a0..eadc7d13d 100644
--- a/newlib/libc/stdlib/atexit.h
+++ b/newlib/libc/stdlib/atexit.h
@@ -9,6 +9,6 @@  enum __atexit_types
   __et_cxa
 };
 
-void __call_exitprocs _PARAMS ((int, _PTR));
-int __register_exitproc _PARAMS ((int, void (*fn) (void), _PTR, _PTR));
+void __call_exitprocs (int, _PTR);
+int __register_exitproc (int, void (*fn) (void), _PTR, _PTR);
 
diff --git a/newlib/libc/stdlib/cxa_atexit.c b/newlib/libc/stdlib/cxa_atexit.c
index c66b28e7d..c03894c4a 100644
--- a/newlib/libc/stdlib/cxa_atexit.c
+++ b/newlib/libc/stdlib/cxa_atexit.c
@@ -30,7 +30,7 @@  _DEFUN (__cxa_atexit,
 {
 #ifdef _LITE_EXIT
   /* Refer to comments in __atexit.c for more details of lite exit.  */
-  int __register_exitproc _PARAMS ((int, void (*fn) (void), _PTR, _PTR))
+  int __register_exitproc (int, void (*fn) (void), _PTR, _PTR)
     __attribute__ ((weak));
 
   if (!__register_exitproc)
diff --git a/newlib/libc/stdlib/exit.c b/newlib/libc/stdlib/exit.c
index 8d1be9d3a..481985cd1 100644
--- a/newlib/libc/stdlib/exit.c
+++ b/newlib/libc/stdlib/exit.c
@@ -55,7 +55,7 @@  _DEFUN (exit, (code),
 {
 #ifdef _LITE_EXIT
   /* Refer to comments in __atexit.c for more details of lite exit.  */
-  void __call_exitprocs _PARAMS ((int, _PTR)) __attribute__((weak));
+  void __call_exitprocs (int, _PTR)) __attribute__((weak);
   if (__call_exitprocs)
 #endif
     __call_exitprocs (code, NULL);
diff --git a/newlib/libc/stdlib/setenv.c b/newlib/libc/stdlib/setenv.c
index c963a3343..e68e91d14 100644
--- a/newlib/libc/stdlib/setenv.c
+++ b/newlib/libc/stdlib/setenv.c
@@ -23,7 +23,7 @@ 
 #include <stdlib.h>
 #include <string.h>
 
-extern int _unsetenv_r _PARAMS ((struct _reent *, const char *));
+extern int _unsetenv_r (struct _reent *, const char *);
 
 /*
  * setenv --
diff --git a/newlib/libc/stdlib/setenv_r.c b/newlib/libc/stdlib/setenv_r.c
index b3bc1fcce..31d4fc70d 100644
--- a/newlib/libc/stdlib/setenv_r.c
+++ b/newlib/libc/stdlib/setenv_r.c
@@ -38,7 +38,7 @@  extern char **environ;
 static char ***p_environ = &environ;
 
 /* _findenv_r is defined in getenv_r.c.  */
-extern char *_findenv_r _PARAMS ((struct _reent *, const char *, int *));
+extern char *_findenv_r (struct _reent *, const char *, int *);
 
 /*
  * _setenv_r --
diff --git a/newlib/libc/string/strerror.c b/newlib/libc/string/strerror.c
index 43fa1f592..8d5c188f8 100644
--- a/newlib/libc/string/strerror.c
+++ b/newlib/libc/string/strerror.c
@@ -392,7 +392,7 @@  _DEFUN (_strerror_r, (ptr, errnum, internal, errptr),
 	int *errptr)
 {
   char *error;
-  extern char *_user_strerror _PARAMS ((int, int, int *));
+  extern char *_user_strerror (int, int, int *);
 
   switch (errnum)
     {
diff --git a/newlib/libc/sys/arm/syscalls.c b/newlib/libc/sys/arm/syscalls.c
index 04dde4558..474618dd7 100644
--- a/newlib/libc/sys/arm/syscalls.c
+++ b/newlib/libc/sys/arm/syscalls.c
@@ -18,37 +18,37 @@ 
 #include "swi.h"
 
 /* Forward prototypes.  */
-int     _system     _PARAMS ((const char *));
-int     _rename     _PARAMS ((const char *, const char *));
-int     _isatty		_PARAMS ((int));
-clock_t _times		_PARAMS ((struct tms *));
-int     _gettimeofday	_PARAMS ((struct timeval *, void *));
-void    _raise 		_PARAMS ((void));
-int     _unlink		_PARAMS ((const char *));
-int     _link 		_PARAMS ((void));
-int     _stat 		_PARAMS ((const char *, struct stat *));
-int     _fstat 		_PARAMS ((int, struct stat *));
-caddr_t _sbrk		_PARAMS ((int));
-int     _getpid		_PARAMS ((int));
-int     _kill		_PARAMS ((int, int));
-void    _exit		_PARAMS ((int));
-int     _close		_PARAMS ((int));
-int     _swiclose	_PARAMS ((int));
-int     _open		_PARAMS ((const char *, int, ...));
-int     _swiopen	_PARAMS ((const char *, int));
-int     _write 		_PARAMS ((int, char *, int));
-int     _swiwrite	_PARAMS ((int, char *, int));
-int     _lseek		_PARAMS ((int, int, int));
-int     _swilseek	_PARAMS ((int, int, int));
-int     _read		_PARAMS ((int, char *, int));
-int     _swiread	_PARAMS ((int, char *, int));
-void    initialise_monitor_handles _PARAMS ((void));
-
-static int	wrap		_PARAMS ((int));
-static int	error		_PARAMS ((int));
-static int	get_errno	_PARAMS ((void));
-static int	remap_handle	_PARAMS ((int));
-static int 	findslot	_PARAMS ((int));
+int     _system     (const char *);
+int     _rename     (const char *, const char *);
+int     _isatty		(int);
+clock_t _times		(struct tms *);
+int     _gettimeofday	(struct timeval *, void *);
+void    _raise 		(void);
+int     _unlink		(const char *);
+int     _link 		(void);
+int     _stat 		(const char *, struct stat *);
+int     _fstat 		(int, struct stat *);
+caddr_t _sbrk		(int);
+int     _getpid		(int);
+int     _kill		(int, int);
+void    _exit		(int);
+int     _close		(int);
+int     _swiclose	(int);
+int     _open		(const char *, int, ...);
+int     _swiopen	(const char *, int);
+int     _write 		(int, char *, int);
+int     _swiwrite	(int, char *, int);
+int     _lseek		(int, int, int);
+int     _swilseek	(int, int, int);
+int     _read		(int, char *, int);
+int     _swiread	(int, char *, int);
+void    initialise_monitor_handles (void);
+
+static int	wrap		(int);
+static int	error		(int);
+static int	get_errno	(void);
+static int	remap_handle	(int);
+static int 	findslot	(int);
 
 /* Register name faking - works in collusion with the linker.  */
 register char * stack_ptr asm ("sp");
diff --git a/newlib/libc/sys/linux/sys/errno.h b/newlib/libc/sys/linux/sys/errno.h
index 86a6968fe..049afc18a 100644
--- a/newlib/libc/sys/linux/sys/errno.h
+++ b/newlib/libc/sys/linux/sys/errno.h
@@ -12,7 +12,7 @@ 
 
 #ifndef _REENT_ONLY
 #define errno (*__errno())
-extern int *__errno _PARAMS ((void));
+extern int *__errno (void);
 #endif
 
 extern __IMPORT const char * const _sys_errlist[];
diff --git a/newlib/libc/sys/linux/sys/fcntl.h b/newlib/libc/sys/linux/sys/fcntl.h
index 78914fd8f..0fb8ae970 100644
--- a/newlib/libc/sys/linux/sys/fcntl.h
+++ b/newlib/libc/sys/linux/sys/fcntl.h
@@ -13,17 +13,17 @@ 
 
 #include <_ansi.h>
 
-extern int creat _PARAMS ((const char *, mode_t));
-extern int _open _PARAMS ((const char *, int, ...));
+extern int creat (const char *, mode_t);
+extern int _open (const char *, int, ...);
 
 #ifdef __KERNEL_PROTOTYPES
 extern int open(const char *pathname, int flags, mode_t mode);
 extern int fcntl(int fd, int cmd, long arg);
 #else
-extern int open _PARAMS ((const char *, int, ...));
-extern int fcntl _PARAMS ((int, int, ...));
+extern int open (const char *, int, ...);
+extern int fcntl (int, int, ...);
 #endif
 
-extern int _fcntl _PARAMS ((int, int, ...));
+extern int _fcntl (int, int, ...);
 
 #endif
diff --git a/newlib/libc/sys/phoenix/sys/errno.h b/newlib/libc/sys/phoenix/sys/errno.h
index 82aab6d0c..6d5b001c3 100644
--- a/newlib/libc/sys/phoenix/sys/errno.h
+++ b/newlib/libc/sys/phoenix/sys/errno.h
@@ -30,7 +30,7 @@ 
 
 #ifndef _REENT_ONLY
 #define errno (*__errno())
-extern int *__errno _PARAMS ((void));
+extern int *__errno (void);
 #endif
 
 /* Don't use these variables directly. Use strerror instead. */
diff --git a/newlib/libc/sys/sparc64/sys/fcntl.h b/newlib/libc/sys/sparc64/sys/fcntl.h
index b52932b3f..67d2b4072 100644
--- a/newlib/libc/sys/sparc64/sys/fcntl.h
+++ b/newlib/libc/sys/sparc64/sys/fcntl.h
@@ -167,9 +167,9 @@  struct eflock {
 #include <sys/types.h>
 #include <sys/stat.h>		/* sigh. for the mode bits for open/creat */
 
-extern int open _PARAMS ((const char *, int, ...));
-extern int creat _PARAMS ((const char *, mode_t));
-extern int fcntl _PARAMS ((int, int, ...));
+extern int open (const char *, int, ...);
+extern int creat (const char *, mode_t);
+extern int fcntl (int, int, ...);
 
 #ifdef __cplusplus
 }
diff --git a/winsup/cygwin/include/cygwin/stdlib.h b/winsup/cygwin/include/cygwin/stdlib.h
index a8eb4de31..fc8bc8486 100644
--- a/winsup/cygwin/include/cygwin/stdlib.h
+++ b/winsup/cygwin/include/cygwin/stdlib.h
@@ -45,9 +45,9 @@  int posix_openpt (int);
 #define _unsetenv_r UNUSED__unsetenv_r
 #endif
 
-extern _PTR memalign _PARAMS ((size_t, size_t));
+extern _PTR memalign (size_t, size_t);
 #if __BSD_VISIBLE || (__XSI_VISIBLE >= 4 && __POSIX_VISIBLE < 200112)
-extern _PTR valloc _PARAMS ((size_t));
+extern _PTR valloc (size_t);
 #endif
 
 #undef _malloc_r
diff --git a/winsup/cygwin/include/fcntl.h b/winsup/cygwin/include/fcntl.h
index 3dad0889f..22adacaf2 100644
--- a/winsup/cygwin/include/fcntl.h
+++ b/winsup/cygwin/include/fcntl.h
@@ -43,8 +43,8 @@  details. */
 #ifdef __cplusplus
 extern "C" {
 #endif
-extern int posix_fadvise _PARAMS ((int, off_t, off_t, int));
-extern int posix_fallocate _PARAMS ((int, off_t, off_t));
+extern int posix_fadvise (int, off_t, off_t, int);
+extern int posix_fallocate (int, off_t, off_t);
 #ifdef __cplusplus
 }
 #endif
diff --git a/winsup/cygwin/include/sys/file.h b/winsup/cygwin/include/sys/file.h
index 6dabeb70c..4d51fd5fe 100644
--- a/winsup/cygwin/include/sys/file.h
+++ b/winsup/cygwin/include/sys/file.h
@@ -44,7 +44,7 @@  extern "C"
 {
 #endif
 
-extern int flock _PARAMS ((int, int));
+extern int flock (int, int);
 
 #ifdef __cplusplus
 }