#include <iostream>
enum TestEnum
{
V1 = 0,
V2
};
struct Foo
{
bool d1:1;
TestEnum d2:1;
int d3:1;
unsigned int d4:1;
};
int main()
{
Foo foo;
foo.d1 = true;
foo.d2 = V2;
foo.d3 = 1;
foo.d4 = 1;
std::cout << std::boolalpha;
std::cout << "d1: " << foo.d1 << std::endl;
std::cout << "d2: " << foo.d2 << std::endl;
std::cout << "d3: " << foo.d3 << std::endl;
std::cout << "d4: " << foo.d4 << std::endl;
std::cout << std::endl;
std::cout << (foo.d1 == true) << std::endl;
std::cout << (foo.d2 == V2) << std::endl;
std::cout << (foo.d3 == 1) << std::endl;
std::cout << (foo.d4 == 1) << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKZW51bSBUZXN0RW51bQp7CiAgIFYxID0gMCwKICAgVjIKfTsKCnN0cnVjdCBGb28KewogICBib29sICAgICAgICAgIGQxOjE7CiAgIFRlc3RFbnVtICAgICAgZDI6MTsKICAgaW50ICAgICAgICAgICBkMzoxOwogICB1bnNpZ25lZCBpbnQgIGQ0OjE7Cn07CgppbnQgbWFpbigpCnsKICAgRm9vIGZvbzsKICAgZm9vLmQxID0gdHJ1ZTsKICAgZm9vLmQyID0gVjI7CiAgIGZvby5kMyA9IDE7CiAgIGZvby5kNCA9IDE7CgogICBzdGQ6OmNvdXQgPDwgc3RkOjpib29sYWxwaGE7CgogICBzdGQ6OmNvdXQgPDwgImQxOiAiIDw8IGZvby5kMSA8PCBzdGQ6OmVuZGw7CiAgIHN0ZDo6Y291dCA8PCAiZDI6ICIgPDwgZm9vLmQyIDw8IHN0ZDo6ZW5kbDsKICAgc3RkOjpjb3V0IDw8ICJkMzogIiA8PCBmb28uZDMgPDwgc3RkOjplbmRsOwogICBzdGQ6OmNvdXQgPDwgImQ0OiAiIDw8IGZvby5kNCA8PCBzdGQ6OmVuZGw7CiAgIHN0ZDo6Y291dCA8PCBzdGQ6OmVuZGw7CgogICBzdGQ6OmNvdXQgPDwgKGZvby5kMSA9PSB0cnVlKSA8PCBzdGQ6OmVuZGw7CiAgIHN0ZDo6Y291dCA8PCAoZm9vLmQyID09IFYyKSA8PCBzdGQ6OmVuZGw7CiAgIHN0ZDo6Y291dCA8PCAoZm9vLmQzID09IDEpIDw8IHN0ZDo6ZW5kbDsKICAgc3RkOjpjb3V0IDw8IChmb28uZDQgPT0gMSkgPDwgc3RkOjplbmRsOwoKICAgcmV0dXJuIDA7Cn0K