1 /* Copyright (C) 2005 Manuel Novoa III <mjn3@codepoet.org> 2 * 3 * Dedicated to Toni. See uClibc/DEDICATION.mjn3 for details. 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Lesser General Public 7 * License as published by the Free Software Foundation; either 8 * version 2.1 of the License, or (at your option) any later version. 9 * 10 * The GNU C Library is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public 16 * License along with the GNU C Library; see the file COPYING.LIB. If 17 * not, see <http://www.gnu.org/licenses/>. 18 */ 19 20 #ifndef _UCLIBC_VA_COPY_H 21 #define _UCLIBC_VA_COPY_H 1 22 23 #include <stdarg.h> 24 25 /* Deal with pre-C99 compilers. */ 26 #ifndef va_copy 27 28 #ifdef __va_copy 29 #define va_copy(A,B) __va_copy(A,B) 30 #else 31 #warning Neither va_copy (C99/SUSv3) or __va_copy is defined. Using a simple copy instead. But you should really check that this is appropriate and supply an arch-specific override if necessary. 32 /* the glibc manual suggests that this will usually suffice when 33 __va_copy doesn't exist. */ 34 #define va_copy(A,B) A = B 35 #endif 36 37 #endif /* va_copy */ 38 39 #endif /* _UCLIBC_VA_COPY_H */ 40