instantiate1.C, [...]: Tweak match patterns.

* g++.dg/ext/instantiate1.C, g++.dg/ext/instantiate2.C,
	g++.dg/ext/instantiate3.C: Tweak match patterns.

	* g++.old-deja/g++.pt/static11.C: Skip on mmix-knuth-mmixware.

	* gcc.dg/weak-1.c: Fix typo in scan-assembler pattern.

	* g++.old-deja/g++.law/bit-fields2.C: Skip on mmix-knuth-mmixware.

From-SVN: r51688
This commit is contained in:
Hans-Peter Nilsson 2002-04-01 15:49:48 +00:00 committed by Hans-Peter Nilsson
parent 16d9fa4169
commit 3b3f078beb
7 changed files with 39 additions and 16 deletions

View File

@ -1,3 +1,14 @@
2002-04-01 Hans-Peter Nilsson <hp@bitrange.com>
* g++.dg/ext/instantiate1.C, g++.dg/ext/instantiate2.C,
g++.dg/ext/instantiate3.C: Tweak match patterns.
* g++.old-deja/g++.pt/static11.C: Skip on mmix-knuth-mmixware.
* gcc.dg/weak-1.c: Fix typo in scan-assembler pattern.
* g++.old-deja/g++.law/bit-fields2.C: Skip on mmix-knuth-mmixware.
2002-03-31 Richard Henderson <rth@redhat.com>
* gcc.dg/special/alias-2.c: New.

View File

@ -11,14 +11,14 @@ template <class T> struct A {
template <class T> void A<T>::f () { }
extern template struct A<int>;
// { dg-final { scan-assembler-not "\n_?_Z1fIiEvT_(:|\n)" } }
// { dg-final { scan-assembler-not "\n_?_Z1fIiEvT_(:|\n|\t)" } }
void test_f_int () { f(42); }
// { dg-final { scan-assembler-not "\n_?_ZN1AIiE1fEv(:|\n)" } }
// { dg-final { scan-assembler-not "\n_?_ZN1AIiE1fEv(:|\n|\t)" } }
void test_A_int_f () { A<int> a; a.f (); }
// { dg-final { scan-assembler "\n_?_Z1fIdEvT_(:|\n)" } }
// { dg-final { scan-assembler "\n_?_Z1fIdEvT_(:|\n|\t)" } }
void test_f_double () { f (2.0); }
// { dg-final { scan-assembler "\n_?_ZN1AIdE1fEv(:|\n)" } }
// { dg-final { scan-assembler "\n_?_ZN1AIdE1fEv(:|\n|\t)" } }
void test_A_double_f () { A<double> b; b.f (); }

View File

@ -8,8 +8,8 @@ template <class T> struct A {
template <class T> T A<T>::t = 0;
static template struct A<int>;
// { dg-final { scan-assembler "\n_?_ZN1AIiE1tE(:|\n)" } }
// { dg-final { scan-assembler "\n_?_ZN1AIiE1tE(:|\n|\t)" } }
void test_int() { A<int>::t = 42; }
// { dg-final { scan-assembler-not "\n_?_ZN1AIcE1tE(:|\n)" } }
// { dg-final { scan-assembler-not "\n_?_ZN1AIcE1tE(:|\n|\t)" } }
void test_char() { A<char>::t = 42; }

View File

@ -7,8 +7,8 @@ template <class T> struct A {
};
inline template struct A<int>;
// { dg-final { scan-assembler "\n_?_ZTV1AIiE(:|\n)" } }
// { dg-final { scan-assembler "\n_?_ZTV1AIiE(:|\n|\t)" } }
A<int> a;
// { dg-final { scan-assembler-not "\n_?_ZTV1AIcE(:|\n)" } }
// { dg-final { scan-assembler-not "\n_?_ZTV1AIcE(:|\n|\t)" } }
A<char> b;

View File

@ -10,6 +10,12 @@
// From: Jaimie Wilson/MSL <Jaimie_Wilson@msl.isis.org>
// Date: Fri, 28 Jan 1994 06:11:43 -0500
// Subject: GCC bug report
//
// This test is only meant for targets where EMPTY_FIELD_BOUNDARY is
// defined to no larger than the size of an unsigned int, or where
// PCC_BITFIELD_TYPE_MATTERS is defined. Add skips below for targets that
// do not have that property.
// Skip if target: mmix-knuth-mmixware
#include <stdio.h>

View File

@ -1,5 +1,11 @@
// Bug: g++ was failing to destroy C<int>::a because it was using two
// different sentry variables for construction and destruction.
//
// Some targets (e.g. those with "set_board_info needs_status_wrapper 1"
// in their dejagnu baseboard description) require that the status is
// final when exit is entered (or main returns), and not "overruled" by a
// destructor calling _exit. It's not really worth it to handle that.
// Skip if target: mmix-knuth-mmixware
extern "C" void _exit (int);

View File

@ -8,14 +8,14 @@
/* { dg-final { if [string match h8300-*-hms $target_triplet ] {return} } } */
/* { dg-final { if [string match i?86-pc-cygwin $target_triplet ] {return} } } */
/* { dg-final { if [string match *-*-coff $target_triplet ] {return} } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?a" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?b" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?c" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?d" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?e" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?g" } } */
/* { dg-final { scan-assembler-not "weak\[^ \t\]*\[ \t]_?i" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?j" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?a" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?b" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?c" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?d" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?e" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?g" } } */
/* { dg-final { scan-assembler-not "weak\[^ \t\]*\[ \t\]_?i" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?j" } } */
#pragma weak a
int a;