From 5b68ec159132c96127816f79d1e9d86491bfc8c2 Mon Sep 17 00:00:00 2001 From: cuz Date: Fri, 23 Mar 2001 10:28:11 +0000 Subject: [PATCH] Use the new __argsize__ pseudo variable git-svn-id: svn://svn.cc65.org/cc65/trunk@647 b7a2c559-68d2-44c3-8de9-860c34a00d81 --- include/stdarg.h | 120 +++++++++++++++++++++++------------------------ 1 file changed, 60 insertions(+), 60 deletions(-) diff --git a/include/stdarg.h b/include/stdarg.h index c0ebda61f..dca0542aa 100644 --- a/include/stdarg.h +++ b/include/stdarg.h @@ -1,60 +1,60 @@ -/*****************************************************************************/ -/* */ -/* stdarg.h */ -/* */ -/* Variable arguments */ -/* */ -/* */ -/* */ -/* (C) 1998-2000 Ullrich von Bassewitz */ -/* Wacholderweg 14 */ -/* D-70597 Stuttgart */ -/* EMail: uz@musoftware.de */ -/* */ -/* */ -/* This software is provided 'as-is', without any expressed or implied */ -/* warranty. In no event will the authors be held liable for any damages */ -/* arising from the use of this software. */ -/* */ -/* Permission is granted to anyone to use this software for any purpose, */ -/* including commercial applications, and to alter it and redistribute it */ -/* freely, subject to the following restrictions: */ -/* */ -/* 1. The origin of this software must not be misrepresented; you must not */ -/* claim that you wrote the original software. If you use this software */ -/* in a product, an acknowledgment in the product documentation would be */ -/* appreciated but is not required. */ -/* 2. Altered source versions must be plainly marked as such, and must not */ -/* be misrepresented as being the original software. */ -/* 3. This notice may not be removed or altered from any source */ -/* distribution. */ -/* */ -/*****************************************************************************/ - - - -#ifndef _STDARG_H -#define _STDARG_H - - - -typedef unsigned char* va_list; - -#define va_start(ap, fix) ap = (va_list)&fix + *(((va_list)&fix)-1) - __fixargs__ -#define va_arg(ap,type) (*(type*)(ap -= ((sizeof (type) + 1) & ~1))) -#define va_copy(dest, src) ((dest)=(src)) -#define va_end(ap) - -/* This is only valid *before* the first call to va_arg. It will also work - * only for int sized parameters. - */ -#define va_fix(ap, offs) (*(unsigned*)(ap+(__fixargs__-2*offs))) - - - -/* End of stdarg.h */ -#endif - - - - +/*****************************************************************************/ +/* */ +/* stdarg.h */ +/* */ +/* Variable arguments */ +/* */ +/* */ +/* */ +/* (C) 1998-2000 Ullrich von Bassewitz */ +/* Wacholderweg 14 */ +/* D-70597 Stuttgart */ +/* EMail: uz@musoftware.de */ +/* */ +/* */ +/* This software is provided 'as-is', without any expressed or implied */ +/* warranty. In no event will the authors be held liable for any damages */ +/* arising from the use of this software. */ +/* */ +/* Permission is granted to anyone to use this software for any purpose, */ +/* including commercial applications, and to alter it and redistribute it */ +/* freely, subject to the following restrictions: */ +/* */ +/* 1. The origin of this software must not be misrepresented; you must not */ +/* claim that you wrote the original software. If you use this software */ +/* in a product, an acknowledgment in the product documentation would be */ +/* appreciated but is not required. */ +/* 2. Altered source versions must be plainly marked as such, and must not */ +/* be misrepresented as being the original software. */ +/* 3. This notice may not be removed or altered from any source */ +/* distribution. */ +/* */ +/*****************************************************************************/ + + + +#ifndef _STDARG_H +#define _STDARG_H + + + +typedef unsigned char* va_list; + +#define va_start(ap, fix) ap = (va_list)&fix + __argsize__ - __fixargs__ +#define va_arg(ap,type) (*(type*)(ap -= ((sizeof (type) + 1) & ~1))) +#define va_copy(dest, src) ((dest)=(src)) +#define va_end(ap) + +/* This is only valid *before* the first call to va_arg. It will also work + * only for int sized parameters. + */ +#define va_fix(ap, offs) (*(unsigned*)(ap+(__fixargs__-2*offs))) + + + +/* End of stdarg.h */ +#endif + + + +