new
From-SVN: r26998
This commit is contained in:
parent
39b1a0588f
commit
780c0cb4d2
18
gcc/testsuite/g++.old-deja/g++.other/overcnv2.C
Normal file
18
gcc/testsuite/g++.old-deja/g++.other/overcnv2.C
Normal file
@ -0,0 +1,18 @@
|
||||
// Test that we resolve this case as mandated by the standard, but also
|
||||
// warn about it. We choose op char* not because it is a member of B --
|
||||
// the standard says that all conversion ops are treated as coming from
|
||||
// the type of the argument -- but because it is non-const.
|
||||
|
||||
struct A {
|
||||
operator const char *() const;
|
||||
};
|
||||
|
||||
struct B : public A {
|
||||
operator char *() { return 0; }
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
B b;
|
||||
(const char *)b; // WARNING - surprising overload resolution
|
||||
}
|
Loading…
Reference in New Issue
Block a user