[comp.unix.aix] AIX 3.1 and alloca?

jew@rs6000.sunquest.com (04/06/91)

Trying to compile Perl 4.000 under AIX 3.1.  alloca is in the manual and
supposed to be available via a cc command line switch.  The switch is not
mentioned in the cc manual however.  I tried using alloca.c from emacs to
no avail (xmalloc undefined).  I think someone has already done this...
J. E. Ward	jew@sunquest.com

Confucious say...
Mosher's Law of Software Engineering:

andreess@mrlaxs.mrl.uiuc.edu (Marc Andreessen) (04/06/91)

In article <17121@sunquest.UUCP> jew@rs6000.sunquest.com writes:
>Trying to compile Perl 4.000 under AIX 3.1.  alloca is in the manual and
>supposed to be available via a cc command line switch.  The switch is not
>mentioned in the cc manual however.  I tried using alloca.c from emacs to
>no avail (xmalloc undefined).  I think someone has already done this...

FAQ #369c4:  To use alloca within a C source file, include the line
'#pragma alloca' at the top of your file.

Marc

--
Marc Andreessen___________University of Illinois Materials Research Laboratory
Internet: andreessen@uimrl7.mrl.uiuc.edu____________Bitnet: andreessen@uiucmrl

abe@mace.cc.purdue.edu (Vic Abell) (04/06/91)

In article <17121@sunquest.UUCP> jew@rs6000.sunquest.com writes:
>Trying to compile Perl 4.000 under AIX 3.1.  alloca is in the manual and
>supposed to be available via a cc command line switch.  The switch is not
>mentioned in the cc manual however.  I tried using alloca.c from emacs to
>no avail (xmalloc undefined).  I think someone has already done this...

Here is a repost of Ed Kubaitis' article on porting Perl 3.0, patch level
37 to AIX 3.1.  I just used it today to port Perl 4.0, patch level 0 to
AIX 3.1 and it worked correctly.

----

Article 2287 of comp.unix.aix:
>From: ejk@uxh.cso.uiuc.edu (Ed Kubaitis)
Newsgroups: comp.unix.aix
Subject: perl patchlevel 37 on AIX 3.1
Message-ID: <1990Oct20.175015.19928@ux1.cso.uiuc.edu>
Date: 20 Oct 90 17:50:15 GMT
Sender: news@ux1.cso.uiuc.edu (News)
Reply-To: ejk@uxh.cso.uiuc.edu (Ed Kubaitis)
Organization: University of Illinois at Urbana
Lines: 45

The attached patch and answering "n" to the Configure question

   Do you wish to attempt to use the malloc that comes with perl? [y] n

allowed a successful make and make test for perl at patchlevel 37 on an
IBM RS/6000 running AIX 3.1. (Answering "y" yielded an "illegal redefinition
message for "free" in malloc.c.) The default answer was taken for all other
questions posed by Configure.

----------------------------------
Ed Kubaitis (ejk@uxh.cso.uiuc.edu)
Computing Services Office - University of Illinois - Urbana

-------------------------------------------------------------------------------
*** perl.h-	Sat Oct 20 10:39:52 1990
--- perl.h	Sat Oct 20 11:26:32 1990
***************
*** 317,323 ****
  #   define I286
  #endif
  
! #ifndef	__STDC__
  #ifdef CHARSPRINTF
      char *sprintf();
  #else
--- 317,323 ----
  #   define I286
  #endif
  
! #if !defined(__STDC__) && !defined(_IBMR2)
  #ifdef CHARSPRINTF
      char *sprintf();
  #else
*** x2p/a2p.y-	Sat Oct 20 11:01:06 1990
--- x2p/a2p.y	Sat Oct 20 11:01:38 1990
***************
*** 18,23 ****
--- 18,24 ----
   * 
   */
  
+ #pragma alloca
  #include "INTERN.h"
  #include "a2p.h"
  

tli@Morgan.COM ( IBM) (04/11/91)

Put #pragma alloca on the first line of your .c file. This should do the
trick. What version of the xlc compiler are you using? There is a problem
with 01.01.0000.0001 of the C compiler.

skg9h@kelvin.seas.Virginia.EDU (Sharad Kumar Gandhi) (04/11/91)

       Can anybody tell me about ftp sites for xmaker which is a word processor which can work on x windoow.

thanks
sharad