From 68ea752b164a1d1ae7840494a99716bff284cf48 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Tue, 10 Feb 1998 20:30:13 -0500 Subject: [PATCH] new From-SVN: r17853 --- .../g++.old-deja/g++.bugs/900119_01.C | 6 +-- gcc/testsuite/g++.old-deja/g++.eh/ptr1.C | 2 +- gcc/testsuite/g++.old-deja/g++.ext/memconst.C | 3 +- gcc/testsuite/g++.old-deja/g++.jason/crash2.C | 10 ---- gcc/testsuite/g++.old-deja/g++.law/enum5.C | 4 +- gcc/testsuite/g++.old-deja/g++.mike/p11110.C | 4 +- gcc/testsuite/g++.old-deja/g++.other/conv1.C | 6 +++ gcc/testsuite/g++.old-deja/g++.other/init3.C | 7 +++ gcc/testsuite/g++.old-deja/g++.other/init4.C | 12 +++++ .../g++.old-deja/g++.other/ptrmem1.C | 15 ++++++ gcc/testsuite/g++.old-deja/g++.pt/defarg.C | 10 ++++ gcc/testsuite/g++.old-deja/g++.pt/nested1.C | 47 +++++++++++++++++++ 12 files changed, 108 insertions(+), 18 deletions(-) delete mode 100644 gcc/testsuite/g++.old-deja/g++.jason/crash2.C create mode 100644 gcc/testsuite/g++.old-deja/g++.other/conv1.C create mode 100644 gcc/testsuite/g++.old-deja/g++.other/init3.C create mode 100644 gcc/testsuite/g++.old-deja/g++.other/init4.C create mode 100644 gcc/testsuite/g++.old-deja/g++.other/ptrmem1.C create mode 100644 gcc/testsuite/g++.old-deja/g++.pt/defarg.C create mode 100644 gcc/testsuite/g++.old-deja/g++.pt/nested1.C diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900119_01.C b/gcc/testsuite/g++.old-deja/g++.bugs/900119_01.C index 2eb8906ddd1..3c93c525997 100644 --- a/gcc/testsuite/g++.old-deja/g++.bugs/900119_01.C +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900119_01.C @@ -15,7 +15,7 @@ public: static int class0_member_1 = 99; /* ERROR - */ int &class0_member_2 = global_int; /* ERROR - */ - class0 () : class0_member_2 (global_int) { } + class0 () : class0_member_2 (global_int) { } /* ERROR - */ }; @@ -24,7 +24,7 @@ struct struct0 { static int struct0_member_1 = 99; /* ERROR - */ int &struct0_member_2 = global_int; /* ERROR - */ - struct0 () : struct0_member_2 (global_int) { } + struct0 () : struct0_member_2 (global_int) { } /* ERROR - */ }; // g++ does not allow unions to have more than one member with an initializer @@ -40,7 +40,7 @@ union union1 { union union2 { int &union2_member_0 = global_int; /* ERROR - */ - union2 () : union2_member_0 (global_int) { } + union2 () : union2_member_0 (global_int) { } /* ERROR - */ }; int main () { return 0; } diff --git a/gcc/testsuite/g++.old-deja/g++.eh/ptr1.C b/gcc/testsuite/g++.old-deja/g++.eh/ptr1.C index 224952655ba..9101e9e3010 100644 --- a/gcc/testsuite/g++.old-deja/g++.eh/ptr1.C +++ b/gcc/testsuite/g++.old-deja/g++.eh/ptr1.C @@ -15,7 +15,7 @@ int main() } catch (E *&e) { - printf ("address of e is 0x%x\n", (long)e); + printf ("address of e is 0x%lx\n", (long)e); return !(long(e) != 5 && e->x == 5); } return 2; diff --git a/gcc/testsuite/g++.old-deja/g++.ext/memconst.C b/gcc/testsuite/g++.old-deja/g++.ext/memconst.C index 5b42d8ff905..a49d3a05898 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/memconst.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/memconst.C @@ -12,7 +12,8 @@ public: class foo { private: - const unsigned char * const dummy_key = (unsigned char*)"ThisIs a dummy!"; + static const unsigned char * const dummy_key = (unsigned char*)"ThisIs a dummy!"; + public: void bar (); }; diff --git a/gcc/testsuite/g++.old-deja/g++.jason/crash2.C b/gcc/testsuite/g++.old-deja/g++.jason/crash2.C deleted file mode 100644 index c16abb8b5d0..00000000000 --- a/gcc/testsuite/g++.old-deja/g++.jason/crash2.C +++ /dev/null @@ -1,10 +0,0 @@ -// Bug: g++ crashes on this (admittedly invalid) input. -// Special g++ Options: -// Build don't link: - -class PhysicalPageId { - const int maximum_block_numbers = 2; - long block_number[maximum_block_numbers]; -}; - -const PhysicalPageId shadows_physical_page_id_null = { 2, { 0, 0 } }; // ERROR - constructor initializes non-field m_b_n diff --git a/gcc/testsuite/g++.old-deja/g++.law/enum5.C b/gcc/testsuite/g++.old-deja/g++.law/enum5.C index 7f86e2c0eb7..0c8b0dc5bef 100644 --- a/gcc/testsuite/g++.old-deja/g++.law/enum5.C +++ b/gcc/testsuite/g++.old-deja/g++.law/enum5.C @@ -60,8 +60,10 @@ int main() struct Crctr { + Crctr() : goop(fighter) {} + char dm[24], campaign[24], name[24], player[24]; - goopes goop = fighter;// ERROR - .* + goopes goop; alignments alignment; int level, maxhit, hitpoints, ac; abitities scores;// ERROR - .* diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p11110.C b/gcc/testsuite/g++.old-deja/g++.mike/p11110.C index 565dfb15855..428486a5042 100644 --- a/gcc/testsuite/g++.old-deja/g++.mike/p11110.C +++ b/gcc/testsuite/g++.old-deja/g++.mike/p11110.C @@ -5,7 +5,7 @@ class data; class conatiner { public: virtual void* first (); - virtual data* contents (void* i); + virtual data* contents (void* i); // ERROR - candidates }; class user { @@ -17,4 +17,4 @@ private: data* user::data1() const { return (_c.contents (_c.first)); // ERROR - -} +} // ERROR - control reaches end diff --git a/gcc/testsuite/g++.old-deja/g++.other/conv1.C b/gcc/testsuite/g++.old-deja/g++.other/conv1.C new file mode 100644 index 00000000000..a558c5eba64 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.other/conv1.C @@ -0,0 +1,6 @@ +// Build don't link: + +class X { +public: + const operator int (); // ERROR - invalid declaration. +}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/init3.C b/gcc/testsuite/g++.old-deja/g++.other/init3.C new file mode 100644 index 00000000000..a4c6e761e66 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.other/init3.C @@ -0,0 +1,7 @@ +// Build don't link: + +struct X +{ + static const bool is_signed = true ; + static const int digits = is_signed ? 8 *sizeof(wchar_t)-1 : 0; +}; diff --git a/gcc/testsuite/g++.old-deja/g++.other/init4.C b/gcc/testsuite/g++.old-deja/g++.other/init4.C new file mode 100644 index 00000000000..9bc473fb9d7 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.other/init4.C @@ -0,0 +1,12 @@ +// Build don't link: + +class error { +public: + error(int) {} +}; + +class foo { + const error x = 1; // ERROR - initialization of non-static data member +}; + + diff --git a/gcc/testsuite/g++.old-deja/g++.other/ptrmem1.C b/gcc/testsuite/g++.old-deja/g++.other/ptrmem1.C new file mode 100644 index 00000000000..1b5d5df8e39 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.other/ptrmem1.C @@ -0,0 +1,15 @@ +// Build don't link: + +class x +{ +public: + virtual int is_constant(); +}; + +void foo() +{ + x* y; + if (y->is_constant) // ERROR - assuming & + { + } +} diff --git a/gcc/testsuite/g++.old-deja/g++.pt/defarg.C b/gcc/testsuite/g++.old-deja/g++.pt/defarg.C new file mode 100644 index 00000000000..314339d1965 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.pt/defarg.C @@ -0,0 +1,10 @@ +template +void f(T t, int i = 10); + +template +void f(T t, int i) {} + +int main() +{ + f(3); +} diff --git a/gcc/testsuite/g++.old-deja/g++.pt/nested1.C b/gcc/testsuite/g++.old-deja/g++.pt/nested1.C new file mode 100644 index 00000000000..3df7c47abb6 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.pt/nested1.C @@ -0,0 +1,47 @@ +// Build don't link: + +template +struct X +{ + T1 a; + + struct Y + { + T2 x; + Y (T2 _x) { x=_x; } + }; + +}; + +template +struct X +{ + T1 a; + + struct Y + { + int x; + Y (int _x) { x=_x; } + }; + +}; + +template <> +struct X +{ + int a; + + struct Y + { + int x; + Y (int _x) { x=_x; } + }; + +}; + +void f () +{ + X t1; + X t2; + X t3; +} -- 2.30.2