Make this work on VC++, pull the HAVE_ALLOCA_H case out instead of duplicating

it.  This code can probably be dramatically simplified, as I suspect that the
pragma and other stuff is not needed with C++ compilers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14015 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2004-06-04 19:25:50 +00:00
parent d1e89d657c
commit 44eaf9b354
2 changed files with 24 additions and 32 deletions

View File

@ -23,27 +23,23 @@
* 2) If alloca.h cannot be found, then try stdlib.h. Some platforms
* (notably FreeBSD) defined alloca() there.
*/
#ifndef __GNUC__
# ifdef HAVE_ALLOCA_H
# include <alloca.h>
#ifdef _MSC_VER
/* noop on Visual C++ */
#elif defined(HAVE_ALLOCA_H)
#include <alloca.h>
#elif !defined(__GNUC__)
# ifdef _AIX
# pragma alloca
# else
# ifdef _AIX
# pragma alloca
# else
# ifndef alloca
char * alloca ();
# endif
# ifndef alloca
char * alloca ();
# endif
# endif
#else
# ifdef HAVE_ALLOCA_H
# include <alloca.h>
# ifdef HAVE_STDLIB_H
# include <stdlib.h>
# else
# ifdef HAVE_STDLIB_H
# include <stdlib.h>
# else
# error "The function alloca() is required but not found!"
# endif
# error "The function alloca() is required but not found!"
# endif
#endif

View File

@ -23,27 +23,23 @@
* 2) If alloca.h cannot be found, then try stdlib.h. Some platforms
* (notably FreeBSD) defined alloca() there.
*/
#ifndef __GNUC__
# ifdef HAVE_ALLOCA_H
# include <alloca.h>
#ifdef _MSC_VER
/* noop on Visual C++ */
#elif defined(HAVE_ALLOCA_H)
#include <alloca.h>
#elif !defined(__GNUC__)
# ifdef _AIX
# pragma alloca
# else
# ifdef _AIX
# pragma alloca
# else
# ifndef alloca
char * alloca ();
# endif
# ifndef alloca
char * alloca ();
# endif
# endif
#else
# ifdef HAVE_ALLOCA_H
# include <alloca.h>
# ifdef HAVE_STDLIB_H
# include <stdlib.h>
# else
# ifdef HAVE_STDLIB_H
# include <stdlib.h>
# else
# error "The function alloca() is required but not found!"
# endif
# error "The function alloca() is required but not found!"
# endif
#endif