+1999-05-08 Richard Henderson <rth@cygnus.com>
+
+ * g++.old-deja/g++.benjamin/p12475.C: Use LONG_MAX to find
+ the constant to test. Don't XFAIL 64-bit targets.
+
+ * g++.old-deja/g++.jason/thunk3.C: Don't XFAIL Alpha.
+ * g++.old-deja/g++.law/profile1.C: Likewise.
+
+ * g++.old-deja/g++.other/delete4.C: Define size_t; use it in all
+ operator new instances.
+ * g++.old-deja/g++.other/delete5.C: Likewise.
+
1999-05-03 Craig Burley <craig@jcb-sc.com>
* g77.f-torture/execute/u77-test.f (main): Declare ABORT as
// Build don't link:
// prms-id: 12475
-// excess errors test - XFAIL alpha*-*-* mips64*-*-*
-enum huh { start =-2147483648, next }; // WARNING - , XFAIL sparc64-*-* alpha*-*-* mips64*-*-*
+#include <limits.h>
+
+#if LONG_MAX == 2147483647
+#define TEST 2147483648
+#elif LONG_MAX == 9223372036854775807
+#define TEST 9223372036854775808
+#else
+#error "Unsupported test -- add new constants."
+#endif
+
+enum huh { start =-TEST, next }; // WARNING -
// support, because it doesn't support variadic functions.
// Special g++ Options: -fvtable-thunks
-// excess errors test - XFAIL mips*-*-* alpha*-*-* rs6000-*-* powerpc-*-eabi m68k-*-coff m68k-motorola-sysv m88k-motorola-sysv3
+// excess errors test - XFAIL mips*-*-* rs6000-*-* powerpc-*-eabi m68k-*-coff m68k-motorola-sysv m88k-motorola-sysv3
#include <stdarg.h>
// Special g++ Options: -pg
// GROUPS passed profiling
// Skip if not native
-// excess errors test - XFAIL m68k-motorola-sysv m88k-motorola-sysv3 mips*-*-* alpha*-*-* i[3456]86-*-sco3.2v5*
+// excess errors test - XFAIL m68k-motorola-sysv m88k-motorola-sysv3 mips*-*-* i[3456]86-*-sco3.2v5*
#include <stdio.h>
main()
{
// specification is `throw()'. All other cases must return a non-null pointer
// [expr.new/13].
-void *operator new(unsigned)
+typedef __SIZE_TYPE__ size_t;
+
+void *operator new(size_t)
{
return 0; // ERROR - cannot return NULL
}
-void *operator new[](unsigned)
+void *operator new[](size_t)
{
return 0; // ERROR - cannot return NULL
}
struct X
{
- void *operator new(unsigned)
+ void *operator new(size_t)
{
return 0; // ERROR - cannot return NULL
}
- void *operator new[](unsigned)
+ void *operator new[](size_t)
{
return 0; // ERROR - cannot return NULL
}
struct Y
{
- void *operator new(unsigned) throw()
+ void *operator new(size_t) throw()
{
return 0; // ok
}
- void *operator new[](unsigned) throw()
+ void *operator new[](size_t) throw()
{
return 0; // ok
}
// Copyright (C) 1999 Free Software Foundation, Inc.
// Contributed by Nathan Sidwell 15 Apr 1999 <nathan@acm.org>
+typedef __SIZE_TYPE__ size_t;
+
struct X
{
int i;
X():i(){}
- void *operator new(unsigned)
+ void *operator new(size_t)
{
return 0; // WARNING - cannot return NULL
}
- void *operator new[](unsigned)
+ void *operator new[](size_t)
{
return 0; // WARNING - cannot return NULL
}
int i;
Y():i(){}
- void *operator new(unsigned) throw()
+ void *operator new(size_t) throw()
{
return 0; // ok
}
- void *operator new[](unsigned) throw()
+ void *operator new[](size_t) throw()
{
return 0; // ok
}