1 // { dg-do assemble } 2 // prms-id: 2573 3 4 class X { 5 public: 6 int key(); 7 virtual int vkey(); 8 char *add(); 9 }; 10 add()11char *X::add() { 12 char *f1 = (char *) &key; // { dg-error "14:invalid cast" } 13 // { dg-error "24:ISO C\\+\\+ forbids taking the address" "" { target *-*-* } .-1 } 14 char *f2 = (char *) &vkey; // { dg-error "14:invalid cast" } 15 // { dg-error "24:ISO C\\+\\+ forbids taking the address" "" { target *-*-* } .-1 } 16 return f1; 17 } 18