aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>2001-01-13 12:34:02 +0000
committerRichard Kenner <kenner@gcc.gnu.org>2001-01-13 07:34:02 -0500
commit757e6639b9513610e16cd9795148668bcb82d944 (patch)
tree5c0e24efb7b63aabd09a3c22a36caa8fb7ac34c6 /gcc
parent9e7adcb3f02fed791a723af46c6bdb16b81019bb (diff)
downloadgcc-757e6639b9513610e16cd9795148668bcb82d944.zip
gcc-757e6639b9513610e16cd9795148668bcb82d944.tar.gz
gcc-757e6639b9513610e16cd9795148668bcb82d944.tar.bz2
c-decl.c (start_function): Don't warn if old prototype is builtin that's not in C's namespace.
* c-decl.c (start_function): Don't warn if old prototype is builtin that's not in C's namespace. * libgcc2.c (_varargs): Update definition of __builtin_saveregs. (_bb): Add prototype for ctime. * config/alpha/osf.h (TRANSFER_FROM_TRAMPOLINE): Add missing protos. From-SVN: r38980
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/c-decl.c10
-rw-r--r--gcc/config/alpha/osf.h5
-rw-r--r--gcc/libgcc2.c8
4 files changed, 24 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 33025c2..a39915f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+Sat Jan 13 07:30:02 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * c-decl.c (start_function): Don't warn if old prototype is builtin
+ that's not in C's namespace.
+ * libgcc2.c (_varargs): Update definition of __builtin_saveregs.
+ (_bb): Add prototype for ctime.
+ * config/alpha/osf.h (TRANSFER_FROM_TRAMPOLINE): Add missing protos.
+
Sat Jan 13 09:53:32 MET 2001 Jan Hubicka <jh@suse.cz>
* i386.c (ix86_fp_comparison_arithmetics_cost,
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index bcd414e..97ae2ba 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -5837,12 +5837,18 @@ start_function (declspecs, declarator, prefix_attributes, attributes)
/* Optionally warn of old-fashioned def with no previous prototype. */
if (warn_strict_prototypes
&& TYPE_ARG_TYPES (TREE_TYPE (decl1)) == 0
- && !(old_decl != 0 && TYPE_ARG_TYPES (TREE_TYPE (old_decl)) != 0))
+ && !(old_decl != 0
+ && (TYPE_ARG_TYPES (TREE_TYPE (old_decl)) != 0
+ || (DECL_BUILT_IN (old_decl)
+ && ! C_DECL_ANTICIPATED (old_decl)))))
warning ("function declaration isn't a prototype");
/* Optionally warn of any global def with no previous prototype. */
else if (warn_missing_prototypes
&& TREE_PUBLIC (decl1)
- && !(old_decl != 0 && TYPE_ARG_TYPES (TREE_TYPE (old_decl)) != 0)
+ && !(old_decl != 0
+ && (TYPE_ARG_TYPES (TREE_TYPE (old_decl)) != 0
+ || (DECL_BUILT_IN (old_decl)
+ && ! C_DECL_ANTICIPATED (old_decl))))
&& ! MAIN_NAME_P (DECL_NAME (decl1)))
warning_with_decl (decl1, "no previous prototype for `%s'");
/* Optionally warn of any def with no previous prototype
diff --git a/gcc/config/alpha/osf.h b/gcc/config/alpha/osf.h
index 17538f6..1d1109b 100644
--- a/gcc/config/alpha/osf.h
+++ b/gcc/config/alpha/osf.h
@@ -1,5 +1,5 @@
/* Definitions of target machine for GNU compiler, for DEC Alpha on OSF/1.
- Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998
+ Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2001
Free Software Foundation, Inc.
Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
@@ -128,10 +128,13 @@ Boston, MA 02111-1307, USA. */
/* Attempt to turn on access permissions for the stack. */
#define TRANSFER_FROM_TRAMPOLINE \
+extern void __enable_execute_stack PARAMS ((void *)); \
+ \
void \
__enable_execute_stack (addr) \
void *addr; \
{ \
+ extern int mprotect PARAMS ((const void *, size_t, int)); \
long size = getpagesize (); \
long mask = ~(size-1); \
char *page = (char *) (((long) addr) & mask); \
diff --git a/gcc/libgcc2.c b/gcc/libgcc2.c
index f38bfc8..341ed4a 100644
--- a/gcc/libgcc2.c
+++ b/gcc/libgcc2.c
@@ -1,7 +1,7 @@
/* More subroutines needed by GCC output code on some machines. */
/* Compile this one with gcc. */
/* Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
- Free Software Foundation, Inc.
+ 2001 Free Software Foundation, Inc.
This file is part of GNU CC.
@@ -1457,8 +1457,8 @@ asm ("___builtin_saveregs:");
asm (" .end __builtin_saveregs");
#else /* not __mips__, etc. */
-void * __attribute__ ((__noreturn__))
-__builtin_saveregs (void)
+void * ATTRIBUTE_NORETURN
+__builtin_saveregs ()
{
abort ();
}
@@ -1517,7 +1517,7 @@ BLOCK_PROFILER_CODE
#undef NULL /* Avoid errors if stdio.h and our stddef.h mismatch. */
#include <stdio.h>
-char *ctime ();
+char *ctime PARAMS ((const time_t *));
#include "gbl-ctors.h"
#include "gcov-io.h"