Mailing-List: contact cygwin-apps-help AT sourceware DOT cygnus DOT com; run by ezmlm Sender: cygwin-apps-owner AT sourceware DOT cygnus DOT com List-Subscribe: List-Archive: List-Post: List-Help: , Delivered-To: mailing list cygwin-apps AT sources DOT redhat DOT com Date: Mon, 16 Apr 2001 00:00:07 -0400 Message-Id: <200104160400.AAA06732@envy.delorie.com> X-Authentication-Warning: envy.delorie.com: dj set sender to dj AT envy DOT delorie DOT com using -f From: DJ Delorie To: robert DOT collins AT itdomain DOT com DOT au CC: cygwin-apps AT sources DOT redhat DOT com In-reply-to: <01dc01c0c628$23c1f880$0200a8c0@lifelesswks> (robert DOT collins AT itdomain DOT com DOT au) Subject: Re: next porting question for gcj References: <01b301c0c621$063e4ae0$0200a8c0 AT lifelesswks> <200104160327 DOT XAA06356 AT envy DOT delorie DOT com> <01dc01c0c628$23c1f880$0200a8c0 AT lifelesswks> A simple test will show you: main() { char *b = alloca(500); return b[3]; } Compile with gcc, and you'll see that alloca is implemented directly, without function calls. __builtin_alloca is the internal way gcc implements it; either works just fine but __builtin_alloca is more immune to being #define'd to something else. It's not specific to Cygwin.