From 35d17c1d94820ecd169be6ef9b16027d587b4d7a Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Tue, 18 Jul 1995 19:16:31 -0400 Subject: [PATCH] (va_arg): Add support for 128 bit long double type. From-SVN: r10147 --- gcc/ginclude/va-sparc.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gcc/ginclude/va-sparc.h b/gcc/ginclude/va-sparc.h index 525420a96e4..94339922f06 100644 --- a/gcc/ginclude/va-sparc.h +++ b/gcc/ginclude/va-sparc.h @@ -184,7 +184,9 @@ __extension__ \ The casts to char * avoid warnings about invalid pointer arithmetic. */ #define va_arg(pvar,TYPE) \ __extension__ \ -(*({((__builtin_classify_type (*(TYPE*) 0) >= __record_type_class) \ +(*({((__builtin_classify_type (*(TYPE*) 0) >= __record_type_class \ + || (__builtin_classify_type (*(TYPE*) 0) == __real_type_class \ + && sizeof (TYPE) == 16)) \ ? ((pvar) = (char *)(pvar) + __va_rounded_size (TYPE *), \ *(TYPE **) (void *) ((char *)(pvar) - __va_rounded_size (TYPE *))) \ : __va_rounded_size (TYPE) == 8 \ -- 2.30.2