2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / testsuite / g++.old-deja / g++.pt / expr1.C
blob124d265ddcb32615a90a9e45cdd4474f021d4367
1 // { dg-do run  }
2 template <int n> class vec {
3     double x[n];
5     public:
6     vec() {
7  for (int i=0; i<n-1; ++i) x[i]=0;
8     }
10     vec(const vec<n>& v) {
11  for (int i=0; i<n; ++i) x[i]=v(i);
12     }
14     vec(const vec<n-1>& v, const double& y) {
15  for (int i=0; i<n-1; ++i) x[i]=v(i);
16  x[n-1]=y;
17     }
19     inline double operator()(const int i) const {
20  return x[i];
21     }
25 template <int n> vec<n + 1>& operator,(const vec<n>& v, const double& y) {
26     return *(new vec<n + 1>(v, y));
30 int main() {
31     vec<4> v;
32     vec<5> w;
33     w=(v,3.);