#include <iostream>
class OpTest {
public:
OpTest operator++ (int) {
std::cout << "OpTest::operator++" << std::endl;
return *this;
}
OpTest& operator* () {
std::cout << "OpTest::operator*" << std::endl;
return *this;
}
OpTest& operator= (int) {
std::cout << "OpTest::operator=" << std::endl;
return *this;
}
};
int main() {
OpTest op;
*op++ = 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgT3BUZXN0IHsKcHVibGljOgogIE9wVGVzdCBvcGVyYXRvcisrIChpbnQpIHsKICAgIHN0ZDo6Y291dCA8PCAiT3BUZXN0OjpvcGVyYXRvcisrIiA8PCBzdGQ6OmVuZGw7CiAgICByZXR1cm4gKnRoaXM7CiAgfQoKICBPcFRlc3QmIG9wZXJhdG9yKiAoKSB7CiAgICBzdGQ6OmNvdXQgPDwgIk9wVGVzdDo6b3BlcmF0b3IqIiA8PCBzdGQ6OmVuZGw7CiAgICByZXR1cm4gKnRoaXM7CiAgfQoKICBPcFRlc3QmIG9wZXJhdG9yPSAoaW50KSB7CiAgICBzdGQ6OmNvdXQgPDwgIk9wVGVzdDo6b3BlcmF0b3I9IiA8PCBzdGQ6OmVuZGw7CiAgICByZXR1cm4gKnRoaXM7CiAgfQp9OwoKaW50IG1haW4oKSB7CiAgT3BUZXN0IG9wOwogICpvcCsrID0gMDsKfQo=