OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [g++.old-deja/] [g++.law/] [missed-error3.C] - Blame information for rev 338

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 305 jeremybenn
// { dg-do assemble  }
2
// GROUPS passed missed-error
3
// missed-error file
4
// From: Neil Wilson 
5
// Date:     Tue, 28 Apr 92 13:53:54 WET DST
6
// Subject:  g++ version 2.1 bugs
7
// Message-ID: <15717.9204281253@cch.coventry.ac.uk>
8
 
9
 
10
// enum bool { FALSE = 0, TRUE = 1 };
11
 
12
typedef int T;
13
 
14
class Traversable {
15
public:
16
    virtual const T item() const = 0;
17
    virtual const bool off() const = 0;
18
    virtual ~Traversable() { }
19
};
20
 
21
class Chain : public Traversable {
22
public:
23
    virtual const int count() const = 0;
24
    virtual const bool empty() const = 0;
25
    virtual void forth() const = 0;
26
    virtual const bool isfirst() const = 0;
27
    virtual const bool islast() const = 0;
28
    virtual const int position() const = 0;
29
    virtual const T first() const = 0;
30
    virtual const T last() const = 0;
31
    virtual const T i_th(const int index) const = 0;
32
    virtual void start() const = 0;
33
    virtual void back() const = 0;
34
    virtual void finish() const = 0;
35
    virtual void move(const int index) const = 0;
36
    virtual void go(const int index) const = 0;
37
    virtual void put(const T value) = 0;
38
    virtual void put_i_th(const T value, const int index) = 0;
39
    virtual void swap(const int index) = 0;
40
    virtual void wipe_out() = 0;
41
};
42
class List : public Chain {
43
protected:
44
    int item_count;
45
    int cursor_position;
46
    virtual void go_offleft() const = 0;
47
    virtual void go_offright() const = 0;
48
    virtual void copy(const List& other) = 0;
49
public:
50
    List() : item_count(0), cursor_position(0) { }
51
    virtual const int count() const;
52
    virtual const bool empty() const;
53
    virtual const bool isfirst() const;
54
    virtual const bool islast() const;
55
    virtual const bool offleft() const;
56
    virtual const bool offright() const;
57
    virtual const bool off() const;
58
    virtual const int position() const;
59
    virtual const T first() const;
60
    virtual const T last() const;
61
    virtual const T i_th(const int index) const;
62
    virtual void start() const;
63
    virtual void forth() const;
64
    virtual void back() const;
65
    virtual void finish() const;
66
    virtual void move(const int index) const;
67
    virtual void go(const int index) const;
68
    friend const bool operator==(const List& left,
69
        const List& right);
70
    friend const bool operator!=(const List& left,
71
        const List& right);
72
    virtual void put_i_th(const T value, const int index);
73
    virtual void swap(const int index);
74
};
75
typedef int T;
76
class Array {
77
private:
78
    int lower_index;
79
    int upper_index;
80
    T *array;
81
protected:
82
    virtual void allocate(const int minindex, const int maxindex);
83
    virtual void copy(const Array&other);
84
public:
85
    Array(const int minindex, const int maxindex);
86
    Array(const Array& other);
87
    virtual const int count() const;
88
    virtual const int lower() const;
89
    virtual const int upper() const;
90
    virtual const T item(const int index) const;
91
      const T Array::operator[](const int index); // { dg-error "" } qualification ignored
92
    virtual const bool valid_index(const int index) const;
93
    virtual const bool empty() const;
94
    friend const bool operator==(const Array& left, const Array& right);
95
    friend const bool operator!=(const Array& left, const Array& right);
96
    virtual void put(const T value, const int index);
97
    virtual void wipe_out();
98
    Array& operator=(const Array& other);
99
    virtual ~Array();
100
};
101
class Fixed_List: public List, private Array {
102
protected:
103
    virtual void go_offleft() const;
104
    virtual void go_offright() const;
105
    virtual void copy(const List& other);
106
public:
107
    Fixed_List(const List& other);
108
    Fixed_List(const int size): Array(1, size) { }
109
    virtual const bool empty() const;
110
    virtual const int count() const;
111
    virtual const T item() const;
112
    virtual const T i_th(const int index) const;
113
    virtual void move(const int index) const;
114
    virtual void put(const T value);
115
    virtual void put_i_th(const T value, const int index);
116
    virtual void wipe_out() { }
117
    Fixed_List& operator=(const List& other);
118
};
119
 
120
void Fixed_List::go_offleft() const
121
{
122
    cursor_position = 0;// { dg-error "" }
123
}
124
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.