summaryrefslogtreecommitdiff
path: root/gcc/ginclude
diff options
context:
space:
mode:
authorrms <rms@138bc75d-0d04-0410-961f-82ee72b054a4>1992-01-19 04:13:04 +0000
committerrms <rms@138bc75d-0d04-0410-961f-82ee72b054a4>1992-01-19 04:13:04 +0000
commit7628b7301299cd4e1337a714d55a5857012eef34 (patch)
treed447a556f6ab20dff3467433f561e19fec1e15f1 /gcc/ginclude
parent108ed65ecdb4960bbf92a79fb27f797896d3f9d4 (diff)
downloadgcc-7628b7301299cd4e1337a714d55a5857012eef34.tar.gz
*** empty log message ***
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ginclude')
-rw-r--r--gcc/ginclude/va-pyr.h1
-rw-r--r--gcc/ginclude/va-sparc.h1
-rw-r--r--gcc/ginclude/va-spur.h1
3 files changed, 3 insertions, 0 deletions
diff --git a/gcc/ginclude/va-pyr.h b/gcc/ginclude/va-pyr.h
index d24a1f533b2..edc17100827 100644
--- a/gcc/ginclude/va-pyr.h
+++ b/gcc/ginclude/va-pyr.h
@@ -94,6 +94,7 @@ typedef __va_buf va_list;
#define va_arg(_AP, _MODE) \
+__extension__ \
({__voidptr *__ap = (__voidptr*)&_AP; \
register int __size = sizeof (_MODE); \
register int __onstack = \
diff --git a/gcc/ginclude/va-sparc.h b/gcc/ginclude/va-sparc.h
index f60f1e522de..ed9238842e8 100644
--- a/gcc/ginclude/va-sparc.h
+++ b/gcc/ginclude/va-sparc.h
@@ -34,6 +34,7 @@ typedef char * __va___list;
in the stack are made to be word-aligned; for an aggregate that is
not word-aligned, we advance the pointer to the first non-reg slot. */
#define va_arg(pvar,TYPE) \
+__extension__ \
({ TYPE __va_temp; \
((__builtin_classify_type (__va_temp) >= 12) \
? ((pvar) += __va_rounded_size (TYPE *), \
diff --git a/gcc/ginclude/va-spur.h b/gcc/ginclude/va-spur.h
index 912a2398710..1bb826c550d 100644
--- a/gcc/ginclude/va-spur.h
+++ b/gcc/ginclude/va-spur.h
@@ -32,6 +32,7 @@ typedef struct {
#define va_end(pvar)
#define va_arg(pvar,type) \
+__extension__ \
({ type __va_result; \
if ((pvar).__pnt >= 20) { \
__va_result = *( (type *) ((pvar).__stack + (pvar).__pnt - 20)); \