#include <iostream>
#include <type_traits>
struct A
{
void foo()
{
std::cout << std::is_same<decltype(this), const A*>::value << '\n';
}
void bar() const
{
std::cout << std::is_same<decltype(this), const A*>::value << '\n';
}
};
int main()
{
A a;
a.foo();
a.bar();
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dHlwZV90cmFpdHM+CgpzdHJ1Y3QgQQp7CiAgICB2b2lkIGZvbygpCiAgICB7CiAgICAgICAgc3RkOjpjb3V0IDw8IHN0ZDo6aXNfc2FtZTxkZWNsdHlwZSh0aGlzKSwgY29uc3QgQSo+Ojp2YWx1ZSA8PCAnXG4nOwogICAgfQogICAgCiAgICB2b2lkIGJhcigpIGNvbnN0CiAgICB7CiAgICAgICAgc3RkOjpjb3V0IDw8IHN0ZDo6aXNfc2FtZTxkZWNsdHlwZSh0aGlzKSwgY29uc3QgQSo+Ojp2YWx1ZSA8PCAnXG4nOwogICAgfQp9OwoKaW50IG1haW4oKQp7CiAgICBBIGE7CiAgICBhLmZvbygpOwogICAgYS5iYXIoKTsKfQ==