Back to index

glibc  2.9
nldbl-compat.h
Go to the documentation of this file.
00001 /* Prototypes for compatibility double == long double entry points.
00002    Copyright (C) 2006, 2007 Free Software Foundation, Inc.
00003    This file is part of the GNU C Library.
00004    Contributed by Jakub Jelinek <jakub@cygnus.com>, 2006.
00005 
00006    The GNU C Library is free software; you can redistribute it and/or
00007    modify it under the terms of the GNU Lesser General Public
00008    License as published by the Free Software Foundation; either
00009    version 2.1 of the License, or (at your option) any later version.
00010 
00011    The GNU C Library is distributed in the hope that it will be useful,
00012    but WITHOUT ANY WARRANTY; without even the implied warranty of
00013    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014    Lesser General Public License for more details.
00015 
00016    You should have received a copy of the GNU Lesser General Public
00017    License along with the GNU C Library; if not, write to the Free
00018    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
00019    02111-1307 USA.  */
00020 
00021 #ifndef __NLDBL_COMPAT_H
00022 #define __NLDBL_COMPAT_H    1
00023 
00024 /* Avoid long double prototypes.  */
00025 #define __NO_LONG_DOUBLE_MATH      1
00026 #include <stdarg.h>
00027 #include <stdlib.h>
00028 #include <stdio.h>
00029 #include <printf.h>
00030 #include <wchar.h>
00031 #include <math.h>
00032 #include <monetary.h>
00033 #include <sys/syslog.h>
00034 
00035 
00036 /* Declare the __nldbl_NAME function the wrappers call that's in libc.so.  */
00037 #define NLDBL_DECL(name) extern __typeof (name) __nldbl_##name
00038 
00039 NLDBL_DECL (_IO_vfscanf);
00040 NLDBL_DECL (vfscanf);
00041 NLDBL_DECL (vfwscanf);
00042 NLDBL_DECL (obstack_vprintf);
00043 NLDBL_DECL (vasprintf);
00044 NLDBL_DECL (dprintf);
00045 NLDBL_DECL (vdprintf);
00046 NLDBL_DECL (fprintf);
00047 NLDBL_DECL (vfprintf);
00048 NLDBL_DECL (vfwprintf);
00049 NLDBL_DECL (vsnprintf);
00050 NLDBL_DECL (vsprintf);
00051 NLDBL_DECL (vsscanf);
00052 NLDBL_DECL (vswprintf);
00053 NLDBL_DECL (vswscanf);
00054 NLDBL_DECL (__asprintf);
00055 NLDBL_DECL (asprintf);
00056 NLDBL_DECL (__printf_fp);
00057 NLDBL_DECL (printf_size);
00058 NLDBL_DECL (syslog);
00059 NLDBL_DECL (vsyslog);
00060 NLDBL_DECL (qecvt);
00061 NLDBL_DECL (qfcvt);
00062 NLDBL_DECL (qgcvt);
00063 NLDBL_DECL (__vstrfmon_l);
00064 NLDBL_DECL (__isoc99_scanf);
00065 NLDBL_DECL (__isoc99_fscanf);
00066 NLDBL_DECL (__isoc99_sscanf);
00067 NLDBL_DECL (__isoc99_vscanf);
00068 NLDBL_DECL (__isoc99_vfscanf);
00069 NLDBL_DECL (__isoc99_vsscanf);
00070 NLDBL_DECL (__isoc99_wscanf);
00071 NLDBL_DECL (__isoc99_fwscanf);
00072 NLDBL_DECL (__isoc99_swscanf);
00073 NLDBL_DECL (__isoc99_vwscanf);
00074 NLDBL_DECL (__isoc99_vfwscanf);
00075 NLDBL_DECL (__isoc99_vswscanf);
00076 
00077 /* This one does not exist in the normal interface, only
00078    __nldbl___vstrfmon really exists.  */
00079 extern ssize_t __nldbl___vstrfmon (char *, size_t, const char *, va_list)
00080   __THROW;
00081 
00082 /* These don't use __typeof because they were not declared by the headers,
00083    since we don't compile with _FORTIFY_SOURCE.  */
00084 extern int __nldbl___vfprintf_chk (FILE *__restrict, int,
00085                                const char *__restrict, _G_va_list);
00086 extern int __nldbl___vfwprintf_chk (FILE *__restrict, int,
00087                                 const wchar_t *__restrict, __gnuc_va_list);
00088 extern int __nldbl___vsprintf_chk (char *__restrict, int, size_t,
00089                                const char *__restrict, _G_va_list) __THROW;
00090 extern int __nldbl___vsnprintf_chk (char *__restrict, size_t, int, size_t,
00091                                 const char *__restrict, _G_va_list)
00092   __THROW;
00093 extern int __nldbl___vswprintf_chk (wchar_t *__restrict, size_t, int, size_t,
00094                                 const wchar_t *__restrict, __gnuc_va_list)
00095   __THROW;
00096 extern int __nldbl___vasprintf_chk (char **, int, const char *, _G_va_list)
00097   __THROW;
00098 extern int __nldbl___vdprintf_chk (int, int, const char *, _G_va_list);
00099 extern int __nldbl___obstack_vprintf_chk (struct obstack *, int, const char *,
00100                                      _G_va_list) __THROW;
00101 extern void __nldbl___vsyslog_chk (int, int, const char *, va_list);
00102 
00103 
00104 #endif /* __NLDBL_COMPAT_H */