Ignore:
Timestamp:
Mar 17, 2011, 6:38:29 PM (14 years ago)
Author:
bird
Message:

0.6: Backported r3715: 386/stdarg.h,sys/cdefs.h: Synced in bit from more recent FreeBSDs so that the stdarg.h macros will work with more recent GCC versions. Fixes #212.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/libc-0.6/src/emx/include/386/stdarg.h

    r1506 r3716  
    11/* $Id$ */
    22/** @file
    3  * FreeBSD 5.1
     3 * FreeBSD 9.0
    44 * @changed bird: EMXisms.
    55 */
     
    3838 *
    3939 *      @(#)stdarg.h    8.1 (Berkeley) 6/10/93
    40  * $FreeBSD: src/sys/i386/include/stdarg.h,v 1.18 2002/11/27 16:28:18 obrien Exp $
     40 * $FreeBSD: src/sys/i386/include/stdarg.h,v 1.21 2006/09/21 01:37:02 kan Exp $
    4141 */
    4242
     
    5353#endif
    5454
    55 #if defined(__GNUC__) && (__GNUC__ == 2 && __GNUC_MINOR__ > 95 || __GNUC__ >= 3)
     55#ifdef __GNUCLIKE_BUILTIN_STDARG
    5656
    5757#define va_start(ap, last) \
    58         __builtin_stdarg_start((ap), (last))
     58        __builtin_va_start((ap), (last))
    5959
    6060#define va_arg(ap, type) \
     
    6969        __builtin_va_end(ap)
    7070
    71 #else   /* ! __GNUC__ post GCC 2.95 */
     71#else   /* !__GNUCLIKE_BUILTIN_STDARG */
    7272
    7373#define __va_size(type) \
    7474        (((sizeof(type) + sizeof(int) - 1) / sizeof(int)) * sizeof(int))
    7575
    76 #ifdef __GNUC__
     76#ifdef __GNUCLIKE_BUILTIN_NEXT_ARG
    7777#define va_start(ap, last) \
    7878        ((ap) = (va_list)__builtin_next_arg(last))
    79 #else   /* non-GNU compiler */
     79#else   /* !__GNUCLIKE_BUILTIN_NEXT_ARG */
    8080#define va_start(ap, last) \
    8181        ((ap) = (va_list)&(last) + __va_size(last))
    82 #endif  /* __GNUC__ */
     82#endif  /* __GNUCLIKE_BUILTIN_NEXT_ARG */
    8383
    8484#define va_arg(ap, type) \
    8585        (*(type *)((ap) += __va_size(type), (ap) - __va_size(type)))
    8686
     87#if __ISO_C_VISIBLE >= 1999
     88#define va_copy(dest, src) \
     89        ((dest) = (src))
     90#endif
     91
    8792#define va_end(ap)
    8893
    89 #endif /* __GNUC__ post GCC 2.95 */
     94#endif /* __GNUCLIKE_BUILTIN_STDARG */
    9095
    9196#endif /* !_MACHINE_STDARG_H_ */
     97
Note: See TracChangeset for help on using the changeset viewer.