1// { dg-do compile }
2// GROUPS passed old-abort
3typedef int element;
4class Pix {
5public:
6    Pix();
7    Pix(const Pix&);
8
9    // Friend functions so that v == x works as does x == v works
10    friend int operator==(void *v, const Pix& x) // { dg-error "previously" }
11    { return v == index; }  // { dg-error "from this location" }
12    // ??? should be operator!=
13    friend int operator==(void *v, const Pix& x) // { dg-error "redefinition" }
14    { return v != index; }
15private:
16//    friend class List<T>;
17    element *index; // { dg-error "invalid use of non-static data member" }
18};
19