From ripley at stats.ox.ac.uk  Mon Jun  6 13:24:26 2005
From: ripley at stats.ox.ac.uk (ripley@stats.ox.ac.uk)
Date: Mon Jun  6 13:24:34 2005
Subject: [Rd] alloca() on FreeBSD (PR#7890)
Message-ID: <20050606112426.3827BA3C4@slim.kubism.ku.dk>

On Mon, 23 May 2005 vangyzen@stat.duke.edu wrote:

> Full_Name: Eric van Gyzen
> Version: 2.1.0
> OS: FreeBSD 5.4
> Submission from: (NULL) (152.3.22.33)
>
>
> R-2.1.0 fails to compile on the newest release of FreeBSD, complaining about
> undefined references to __builtin_alloca.  On FreeBSD, alloca() is declared in
> stdlib.h, not alloca.h as the R sources expect.  Therefore, HAVE_DECL_ALLOCA
> does not get set, so the R sources declare alloca() after it has already been
> #defined by stdlib.h.
>
> A possible fix is to modify the configure script to look for the declaration of
> alloca() in stdlib.h (perhaps after it fails to find it in alloca.h).

It is already supposed to, so it is not finding the declaration there 
either. If you look up the definition of

AC_CHECK_DECLS([alloca], , , [#include <alloca.h>])

it searches in stdlib.h.  Can you please send us the appropriate part of 
config.log?  It may be that this is failing because alloca.h is not found
(but AC_FUNC_ALLOCA is making the same assumptions).

Perhaps the easiest way out is to override the setting on FreeBSD: can 
you please confirm that manually changing

#define HAVE_DECL_ALLOCA 1

in config.h works?

> This was previously reported in PR#7881.

So please don't open a new report on the subject!

-- 
Brian D. Ripley,                  ripley@stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595


[Rd] alloca() on FreeBSD (PR#7890)
ripley@stats.ox.ac.uk