EGCS/g++ happily accepts to const_cast to rvalues of class type.
// --- cut here ---
#include <iostream>
struct A {
A() {}
A(const A&) { std::cout << "A::A(const A&)\n"; }
};
int main()
{
A a;
const_cast<const A>(a); // ERROR
}
// --- cut here ---
The program is ill-formed according to 5.2.11.
-- Gaby