public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Richard Henderson <rth AT cygnus.com>
To: "David O'Brien" <obrien AT NUXI.com>
Cc: Zack Weinberg <zack AT bitmover.com>,
	rittle AT rsch.comm.mot.com, gcc AT gcc.gnu.org
Subject: Re: FreeBSD 4.0
Date: Thu, 16 Sep 1999 14:48:00 -0000	[thread overview]
Message-ID: <19990916144800.B14651@cygnus.com> (raw)
In-Reply-To: <19990915102403.I17808@dragon.nuxi.com>

On Wed, Sep 15, 1999 at 10:24:03AM -0700, David O'Brien wrote:
>     #define	va_start(ap, last) \
> 	    (__builtin_next_arg(last), \
>	     (ap) = *(va_list *)__builtin_saveregs(), (ap).__pad = 0)

This won't work any longer, for multiple reasons, either on Alpha
or with any other target that passes arguments in registers in the
presence of varargs. 

One of the changes actually fixes bugs that show up under rare
conditions, so backward compatibility with old varargs headers
isn't an option.

Bottom line, with version 2.96 and later, you absolutely must use the
builtins.  Which means to me that you should just use gcc's stdarg.h
always.


r~

WARNING: multiple messages have this Message-ID
From: Richard Henderson <rth@cygnus.com>
To: "David O'Brien" <obrien@NUXI.com>
Cc: Zack Weinberg <zack@bitmover.com>,
	rittle@rsch.comm.mot.com, gcc@gcc.gnu.org
Subject: Re: FreeBSD 4.0
Date: Thu, 30 Sep 1999 18:02:00 -0000	[thread overview]
Message-ID: <19990916144800.B14651@cygnus.com> (raw)
Message-ID: <19990930180200.1gcds5Pi7AmFvvAYqL1kDjpeWeiWN2JaUtKdnt1NdqY@z> (raw)
In-Reply-To: <19990915102403.I17808@dragon.nuxi.com>

On Wed, Sep 15, 1999 at 10:24:03AM -0700, David O'Brien wrote:
>     #define	va_start(ap, last) \
> 	    (__builtin_next_arg(last), \
>	     (ap) = *(va_list *)__builtin_saveregs(), (ap).__pad = 0)

This won't work any longer, for multiple reasons, either on Alpha
or with any other target that passes arguments in registers in the
presence of varargs. 

One of the changes actually fixes bugs that show up under rare
conditions, so backward compatibility with old varargs headers
isn't an option.

Bottom line, with version 2.96 and later, you absolutely must use the
builtins.  Which means to me that you should just use gcc's stdarg.h
always.


r~

  reply	other threads:[~1999-09-16 14:48 UTC|newest]

Thread overview: 107+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-09-14 19:32 Wes Morgan
1999-09-14 20:08 ` Richard Henderson
1999-09-15  2:00   ` Jeffrey A Law
1999-09-30 18:02     ` Jeffrey A Law
1999-09-30 18:02   ` Richard Henderson
1999-09-14 22:34 ` Loren James Rittle
1999-09-14 23:00   ` Zack Weinberg
1999-09-14 23:14     ` David O'Brien
1999-09-15  0:25       ` Zack Weinberg
1999-09-15  0:56         ` David O'Brien
1999-09-15  1:21           ` Andreas Schwab
1999-09-15  1:40             ` David O'Brien
1999-09-15  2:23               ` Andreas Schwab
1999-09-15  3:11                 ` David O'Brien
1999-09-15  3:52                   ` Andreas Schwab
1999-09-30 18:02                     ` Andreas Schwab
1999-09-30 18:02                   ` David O'Brien
1999-09-30 18:02                 ` Andreas Schwab
1999-09-20  3:58               ` Jeffrey A Law
1999-09-30 18:02                 ` Jeffrey A Law
1999-09-30 18:02               ` David O'Brien
1999-09-30 18:02             ` Andreas Schwab
1999-09-30 18:02           ` David O'Brien
1999-09-15  1:17         ` David O'Brien
1999-09-15  9:23           ` Zack Weinberg
1999-09-15 10:24             ` David O'Brien
1999-09-16 14:48               ` Richard Henderson [this message]
1999-09-30 18:02                 ` Richard Henderson
1999-09-30 18:02               ` David O'Brien
1999-09-20  4:20             ` Jeffrey A Law
1999-09-21  6:33               ` The USER_H issue Marc Espie
1999-09-30 18:02                 ` Marc Espie
1999-09-30 18:02               ` FreeBSD 4.0 Jeffrey A Law
1999-09-30 18:02             ` Zack Weinberg
1999-09-20  4:34           ` Jeffrey A Law
1999-09-20  9:26             ` Zack Weinberg
1999-09-20  9:55               ` Jeffrey A Law
1999-09-20 10:17                 ` Zack Weinberg
1999-09-20 10:38                   ` Richard Earnshaw
1999-09-20 11:02                     ` Zack Weinberg
1999-09-30 18:02                       ` Zack Weinberg
1999-09-20 11:39                     ` Horst von Brand
1999-09-20 11:49                       ` Chris G. Demetriou
1999-09-30 18:02                         ` Chris G. Demetriou
1999-09-30 18:02                       ` Horst von Brand
1999-09-30 18:02                     ` Richard Earnshaw
1999-09-23  8:51                   ` Jeffrey A Law
1999-09-23  9:13                     ` Pending Projects Bruce Korb
1999-09-30 18:02                       ` Bruce Korb
1999-09-30 18:02                     ` FreeBSD 4.0 Jeffrey A Law
1999-09-30 18:02                   ` Zack Weinberg
1999-09-30 18:02                 ` Jeffrey A Law
1999-09-30 18:02               ` Zack Weinberg
1999-09-30 18:02             ` Jeffrey A Law
1999-09-30 18:02           ` David O'Brien
1999-09-30 18:02         ` Zack Weinberg
1999-09-15  2:00       ` Jeffrey A Law
1999-09-15  2:25         ` David O'Brien
1999-09-15  2:33           ` Jeffrey A Law
1999-09-30 18:02             ` Jeffrey A Law
1999-09-30 18:02           ` David O'Brien
     [not found]         ` <37DFAD27.3E6A25E3@datadesign.com>
     [not found]           ` <199909152042.PAA29374@latour.rsch.comm.mot.com>
1999-09-15 14:26             ` Bruce Korb
1999-09-15 17:10               ` Jeffrey A Law
1999-09-16  1:46                 ` Marc Espie
1999-09-16  6:57                   ` Jeffrey A Law
1999-09-16  7:41                     ` Marc Espie
1999-09-16  7:55                       ` Jeffrey A Law
1999-09-30 18:02                         ` Jeffrey A Law
1999-09-30 18:02                       ` Marc Espie
1999-09-30 18:02                     ` Jeffrey A Law
1999-09-30 18:02                   ` Marc Espie
1999-09-30 18:02                 ` Jeffrey A Law
1999-09-30 18:02               ` Bruce Korb
1999-09-30 18:02         ` Jeffrey A Law
1999-09-30 18:02       ` David O'Brien
1999-09-15  1:59     ` Jeffrey A Law
1999-09-30 18:02       ` Jeffrey A Law
1999-09-30 18:02     ` Zack Weinberg
1999-09-15  7:42   ` Wes Morgan
1999-09-30 18:02     ` Wes Morgan
1999-09-30 18:02   ` Loren James Rittle
1999-09-30 18:02 ` Wes Morgan
1999-09-16 12:42 Mike Stump
1999-09-30 18:02 ` Mike Stump
1999-09-16 13:13 Mike Stump
1999-09-16 13:36 ` Marc Espie
1999-09-16 13:54   ` Jeffrey A Law
1999-09-30 18:02     ` Jeffrey A Law
1999-09-30 18:02   ` Marc Espie
1999-09-30 18:02 ` Mike Stump
1999-09-20 13:43 Mike Stump
1999-09-30 18:02 ` Mike Stump
2000-06-08 12:42 Conerned about lack of detail in ChangeLog/commit messges David O'Brien
2000-06-08 15:18 ` Martin v. Loewis
2000-06-09  8:30 ` David Edelsohn
2000-06-09  8:51   ` David O'Brien
2000-06-09  9:13     ` Nick Burrett
2000-06-09  9:21       ` David O'Brien
2000-06-11  6:38       ` Marc Espie
2001-05-02 18:21 [PATCH] rs6000.c ELF bits inclusion David O'Brien
2001-05-02 20:07 ` David Edelsohn
2001-05-02 20:32   ` David O'Brien
2001-05-02 20:52     ` David Edelsohn
2001-05-03  0:39       ` David O'Brien
2001-05-03 13:17 ` David O'Brien
2001-05-03 16:04   ` David Edelsohn
2001-05-03 19:11     ` David O'Brien

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=19990916144800.B14651@cygnus.com \
    --to=gcc@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).