summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.bob
diff options
context:
space:
mode:
authorupstream source tree <ports@midipix.org>2015-03-15 20:14:05 -0400
committerupstream source tree <ports@midipix.org>2015-03-15 20:14:05 -0400
commit554fd8c5195424bdbcabf5de30fdc183aba391bd (patch)
tree976dc5ab7fddf506dadce60ae936f43f58787092 /gcc/testsuite/g++.old-deja/g++.bob
downloadcbb-gcc-4.6.4-upstream.tar.bz2
cbb-gcc-4.6.4-upstream.tar.xz
obtained gcc-4.6.4.tar.bz2 from upstream website;upstream
verified gcc-4.6.4.tar.bz2.sig; imported gcc-4.6.4 source tree from verified upstream tarball. downloading a git-generated archive based on the 'upstream' tag should provide you with a source tree that is binary identical to the one extracted from the above tarball. if you have obtained the source via the command 'git clone', however, do note that line-endings of files in your working directory might differ from line-endings of the respective files in the upstream repository.
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.bob')
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/array1.C6
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/array2.C4
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/case1.C14
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/cond1.C31
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/delete1.C23
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/extern_C.C9
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/friend1.C5
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/incomplete-cast1.C17
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/inherit1.C26
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/inherit2.C24
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/nested1.C16
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/packed1.C18
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/protected1.C42
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/static1.C12
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/template1.C27
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/template2.C49
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/template3.C49
-rw-r--r--gcc/testsuite/g++.old-deja/g++.bob/template4.C22
18 files changed, 394 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/array1.C b/gcc/testsuite/g++.old-deja/g++.bob/array1.C
new file mode 100644
index 000000000..dac0420c8
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/array1.C
@@ -0,0 +1,6 @@
+// { dg-do assemble }
+char *stuff() {
+ char array[10]; // { dg-warning "" }
+
+ return array;
+}
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/array2.C b/gcc/testsuite/g++.old-deja/g++.bob/array2.C
new file mode 100644
index 000000000..ae044a118
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/array2.C
@@ -0,0 +1,4 @@
+// { dg-do assemble }
+extern const int a[];
+extern const int a[];
+extern const int a[];
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/case1.C b/gcc/testsuite/g++.old-deja/g++.bob/case1.C
new file mode 100644
index 000000000..6fe4f25e3
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/case1.C
@@ -0,0 +1,14 @@
+// { dg-do assemble }
+// prms-id: 9028
+class Foo;
+
+int main()
+{
+ int i=0;
+ switch (i)
+ {
+ case ((Foo *)0): // { dg-error "" }
+ case ((Foo *)1): // { dg-error "" }
+ break;
+ }
+}
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/cond1.C b/gcc/testsuite/g++.old-deja/g++.bob/cond1.C
new file mode 100644
index 000000000..799465424
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/cond1.C
@@ -0,0 +1,31 @@
+// { dg-do assemble }
+// prms-id: 9866
+class TChar
+ {
+public:
+ explicit inline TChar(unsigned int aChar);
+ inline operator unsigned int() const;
+private:
+ unsigned int iChar;
+ };
+inline TChar::TChar(unsigned int aChar)
+ : iChar(aChar)
+ {}
+inline TChar::operator unsigned int() const
+ {return(iChar);}
+
+class TDes8
+ {
+public:
+ inline const unsigned char &operator[](int anIndex) const;
+ const unsigned char &AtC(int anIndex) const;
+ };
+
+inline const unsigned char &TDes8::operator[](int anIndex) const
+ {return(AtC(anIndex));}
+
+
+void doExponent(TDes8 &aDigBuf)
+ {
+ 2 ? TChar(aDigBuf[2]) : '0';
+ }
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/delete1.C b/gcc/testsuite/g++.old-deja/g++.bob/delete1.C
new file mode 100644
index 000000000..9de2a227a
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/delete1.C
@@ -0,0 +1,23 @@
+// { dg-do run }
+// prms-id: 7330
+#include <stddef.h>
+int size = 0;
+
+struct X {
+ int x;
+ void *operator new[](size_t sz) throw() {
+ size = sz;
+ return 0;
+ }
+ void operator delete[] (void *vp) { ::operator delete(vp); }
+};
+int main()
+{
+ X (*px) [10];
+
+ px = new X[5][10];
+
+ delete [] px;
+
+ return 0;
+}
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/extern_C.C b/gcc/testsuite/g++.old-deja/g++.bob/extern_C.C
new file mode 100644
index 000000000..7bbf296e8
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/extern_C.C
@@ -0,0 +1,9 @@
+// { dg-do assemble }
+extern "C" {
+ class A {
+ public:
+ void a();
+ };
+}
+
+void A::a() {}
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/friend1.C b/gcc/testsuite/g++.old-deja/g++.bob/friend1.C
new file mode 100644
index 000000000..4bce9d2ea
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/friend1.C
@@ -0,0 +1,5 @@
+// { dg-do assemble }
+class C {
+public:
+ static friend int f(); // { dg-error "" }
+};
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/incomplete-cast1.C b/gcc/testsuite/g++.old-deja/g++.bob/incomplete-cast1.C
new file mode 100644
index 000000000..916af694d
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/incomplete-cast1.C
@@ -0,0 +1,17 @@
+// { dg-do assemble }
+// prms-id: 5274
+class VHDLIdentifier;
+
+class VHDLPackageProtoRep {
+public:
+ int thing();
+private:
+ virtual VHDLIdentifier &actual_name() ;
+};
+extern void form(const char *format, ... );
+int
+VHDLPackageProtoRep::thing()
+{
+ form("package `%s'", (char *)actual_name()); // { dg-error "" } can't convert from incomplete type
+ return 0;
+}
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/inherit1.C b/gcc/testsuite/g++.old-deja/g++.bob/inherit1.C
new file mode 100644
index 000000000..e75190ba1
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/inherit1.C
@@ -0,0 +1,26 @@
+// { dg-do assemble }
+class A {
+char str[10];
+public:
+ char* m1 () { return str;}
+};
+
+class C : public A {
+public:
+};
+
+class B : public A {
+public:
+ char* m1 () { C::m1(); return ""; } // { dg-error "cannot call" }
+ // { dg-warning "deprecated" "depr" { target *-*-* } 14 }
+};
+
+int main () {
+A a;
+B b;
+C c;
+
+a.m1();
+c.m1();
+b.m1();
+}
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/inherit2.C b/gcc/testsuite/g++.old-deja/g++.bob/inherit2.C
new file mode 100644
index 000000000..6e26ecfa6
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/inherit2.C
@@ -0,0 +1,24 @@
+// { dg-do assemble }
+#include <stdlib.h>
+
+class A {
+public:
+ void z();
+ A(void) {}
+private:
+ A(const A &) { abort(); } // { dg-error "private" }
+ const A& operator =(const A &) { abort(); }
+};
+
+class B : public A { // { dg-error "" }
+public:
+ B(void) {}
+};
+
+void f(B b) { // { dg-error "initializing" }
+}
+
+void g() {
+ B h;
+ f(h); // { dg-message "synthesized|deleted" "synth" }
+}
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/nested1.C b/gcc/testsuite/g++.old-deja/g++.bob/nested1.C
new file mode 100644
index 000000000..37dd2d054
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/nested1.C
@@ -0,0 +1,16 @@
+// { dg-do assemble }
+
+struct A {
+ struct B {
+ typedef long T;
+ int i;
+ };
+};
+struct C {
+ struct B {
+ typedef float T;
+ int i;
+ };
+};
+
+C::B::T a;
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/packed1.C b/gcc/testsuite/g++.old-deja/g++.bob/packed1.C
new file mode 100644
index 000000000..91e2d3c26
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/packed1.C
@@ -0,0 +1,18 @@
+// { dg-do run }
+int
+main() {
+ struct s
+ {
+ int a;
+ short b;
+ } __attribute__((packed)) t;
+
+ if (sizeof (t) != (sizeof(int)+sizeof(short)))
+ {
+ return 1;
+ }
+ else
+ {
+ return 0;
+ }
+}
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/protected1.C b/gcc/testsuite/g++.old-deja/g++.bob/protected1.C
new file mode 100644
index 000000000..ed8f77f6d
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/protected1.C
@@ -0,0 +1,42 @@
+// { dg-do assemble }
+class A {
+public:
+ int i;
+ A(int j) : i(j){}
+};
+
+class B : protected A {
+public:
+ B(int j) : A(j){}
+ void f(){
+ A k(*this);
+ }
+};
+
+class C : protected B {
+public:
+ C(int j) : B(j){}
+ void f();
+
+ void g(){
+ A k(i);
+ }
+};
+
+
+class D : public C {
+public:
+ D(int w) : C(i) {}
+ void j() { A k(*this); }
+ void h() { i=3; }
+};
+
+void C::f() {
+ A k(*this);
+}
+
+B b(3);
+int
+main() {
+ A *z = &b; // { dg-error "" }
+}
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/static1.C b/gcc/testsuite/g++.old-deja/g++.bob/static1.C
new file mode 100644
index 000000000..e3ce9e532
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/static1.C
@@ -0,0 +1,12 @@
+// { dg-do assemble }
+class A {
+ public:
+ static int a;
+};
+
+class B : public A {
+ public:
+ static int b;
+};
+
+int B::a; // { dg-error "" }
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/template1.C b/gcc/testsuite/g++.old-deja/g++.bob/template1.C
new file mode 100644
index 000000000..be4c95787
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/template1.C
@@ -0,0 +1,27 @@
+// { dg-do assemble }
+// prms-id: 10038
+template < class Referencee >
+class Referencer
+{
+public:
+ Referencer (Referencee const * pReferencee);
+};
+
+template <class T>
+class Array
+{
+public:
+ int addElement (T const & e);
+ int addElement ();
+};
+
+class ScenarioGroup;
+
+class ScenarioSet : public Array< Referencer<ScenarioGroup> >
+{
+ typedef Array< Referencer<ScenarioGroup> > arrayBase;
+ void addElement(ScenarioGroup *group)
+ {
+ arrayBase::addElement(group);
+ }
+};
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/template2.C b/gcc/testsuite/g++.old-deja/g++.bob/template2.C
new file mode 100644
index 000000000..7da9deb29
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/template2.C
@@ -0,0 +1,49 @@
+// { dg-do assemble }
+// prms-id: 10046
+template <class T>
+class Array
+{
+public:
+ T const & operator[] (int i) const;
+};
+
+class Referenceable {};
+
+template < class Referencee >
+class Referencer
+{
+public:
+ operator Referencee *() const { return i_referencee; }
+
+protected:
+ Referencee* i_referencee;
+};
+
+class ScenarioGroup {};
+
+class ScenarioSpace;
+
+class ScenarioSet : public Referenceable,
+ public Array< Referencer<ScenarioGroup> >
+{
+public:
+ ScenarioSet& operator=(ScenarioSet const & s);
+};
+
+class ScenarioSpace : public Referenceable,
+ public Array< Referencer<ScenarioSet> >
+{
+};
+
+class ScenarioSetNameSelector
+{
+public:
+ bool operator () (ScenarioSpace &space)
+ {
+ int idx;
+ i_set = space[idx];
+ return false;
+ }
+private:
+ ScenarioSet *i_set;
+};
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/template3.C b/gcc/testsuite/g++.old-deja/g++.bob/template3.C
new file mode 100644
index 000000000..c440f47b9
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/template3.C
@@ -0,0 +1,49 @@
+// { dg-do assemble }
+// prms-id: 9979
+
+template < class Referencee >
+class Referencer
+{
+public:
+ Referencer() {}
+};
+
+template <class T>
+class List
+{
+public:
+ List() {}
+};
+
+template<class T, class KEY>
+class Dictionary
+{
+public:
+ Dictionary() : i_buckets (new List<T>[1234]) {}
+ ~Dictionary() { delete [] i_buckets; }
+
+ List<T> * i_buckets;
+};
+
+class Exchangeable {};
+class ExchangeableHandle {};
+
+class ExchangeableList
+ : public Dictionary<Referencer<Exchangeable>, ExchangeableHandle>
+{
+public:
+ ExchangeableList(int size=0);
+};
+
+class ObjectExchange
+{
+public:
+ ObjectExchange() {}
+
+ ExchangeableList i_theWatchList; // Instruments being monitored
+};
+
+int
+main()
+{
+}
diff --git a/gcc/testsuite/g++.old-deja/g++.bob/template4.C b/gcc/testsuite/g++.old-deja/g++.bob/template4.C
new file mode 100644
index 000000000..13a150d5e
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.bob/template4.C
@@ -0,0 +1,22 @@
+// { dg-do run }
+// prms-id: 10166
+
+template <class A>
+class B {
+ public:
+ int f() {
+ for(int x=0;x<10;x++) {
+ continue;
+ return 1;
+ }
+ return 0;
+ }
+ private:
+ A w;
+};
+
+int
+main() {
+ B<int> c;
+ return c.f();
+}