aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1997-01-19 20:33:32 -0500
committerRichard Kenner <kenner@gcc.gnu.org>1997-01-19 20:33:32 -0500
commitd7fd1073804f0270a878d6c984aece6cd78d5f54 (patch)
tree5dca5257b74d08b14e855e814c715df24dd7ce91
parent825d29359def0401e76c670c7eb7d8e401fd4ce6 (diff)
downloadgcc-d7fd1073804f0270a878d6c984aece6cd78d5f54.zip
gcc-d7fd1073804f0270a878d6c984aece6cd78d5f54.tar.gz
gcc-d7fd1073804f0270a878d6c984aece6cd78d5f54.tar.bz2
Declare alloca here.
Do most of the VAX C-specific set up for DEC C. #if DEC C, undefine QSORT_WORKAROUND and qsort. From-SVN: r13530
-rw-r--r--gcc/config/vax/xm-vms.h27
1 files changed, 24 insertions, 3 deletions
diff --git a/gcc/config/vax/xm-vms.h b/gcc/config/vax/xm-vms.h
index 4b674cc..a880491 100644
--- a/gcc/config/vax/xm-vms.h
+++ b/gcc/config/vax/xm-vms.h
@@ -1,5 +1,5 @@
/* Configuration for GNU C-compiler for Vax.
- Copyright (C) 1987, 1994, 1995, 1996 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
This file is part of GNU CC.
@@ -22,7 +22,7 @@ Boston, MA 02111-1307, USA. */
#define FALSE 0
#define TRUE 1
-#ifdef VAXC
+#if defined(VAXC) || defined(__DECC)
/* if compiling with VAXC, need to fix problem with <stdio.h>
which defines a macro called FILE_TYPE that breaks "tree.h".
Fortunately it uses #ifndef to suppress multiple inclusions.
@@ -128,7 +128,7 @@ Boston, MA 02111-1307, USA. */
#define HAVE_VPRINTF
-#ifdef VAXC
+#if defined(VAXC) || defined(__DECC)
/* Customizations/kludges for building with DEC's VAX C compiler
rather than GCC. */
#define NO_SYS_PARAMS_H /* don't have <sys/params.h> */
@@ -179,3 +179,24 @@ Boston, MA 02111-1307, USA. */
#ifdef QSORT_WORKAROUND
#define qsort not_qsort
#endif
+
+#ifdef __DECC
+/* DECC$SHR doesn't have VAXCRTL's bugs. */
+#undef QSORT_WORKAROUND
+#undef qsort
+/* Avoid a lot of informational level diagnostics about implicitly
+ declared functions. */
+#include <stdlib.h>
+#include <string.h>
+/* this is for genopinit.c */
+ #pragma message disable (undefescap)
+#endif
+
+#if defined(USE_C_ALLOCA) && !defined(alloca)
+/* Declare alloca() using similar logic to that in alloca.c. */
+#ifdef __STDC__
+extern void *alloca(unsigned);
+#else
+extern char *alloca();
+#endif
+#endif