From: Ben Peddell User-Agent: Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.1) Gecko/20020826 X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.os.msdos.djgpp Subject: Re: __builtin_va_list bug? References: <0ab801c306bf$4dacb430$0600000a AT broadpark DOT no> <3EA26C19 DOT 81D82449 AT acm DOT org> <0c2401c30751$05203c90$0600000a AT broadpark DOT no> <3EA395F3 DOT 78C4A4D4 AT acm DOT org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Lines: 11 Message-ID: Date: Tue, 22 Apr 2003 01:18:33 +1000 NNTP-Posting-Host: 144.134.89.111 X-Trace: newsfeeds.bigpond.com 1050937673 144.134.89.111 (Tue, 22 Apr 2003 01:07:53 EST) NNTP-Posting-Date: Tue, 22 Apr 2003 01:07:53 EST Organization: Telstra BigPond Internet Services (http://www.bigpond.com) To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com >> >>Yes, I know. I use "x = (char) va_arg(arg,int)" to stop gcc complaining. >>But my question is why the "int $5" is generated. [...] > > > No idea. The code as it stands (with `char' instead of `int') *is* > incorrect, and the implementation of is necessarily > "magical." A BOUND that is always out of bounds, and therefore changed to INT $5?