struct A
{
static constexpr int foo() { return 1; }
};
template <class T>
void bar(T&& t)
{
t.foo(); // <-- taaa-daaa focus-pokus
}
int main()
{
const A a;
bar(a);
return 0;
}
c3RydWN0IEEKewogICAgc3RhdGljIGNvbnN0ZXhwciBpbnQgZm9vKCkgeyByZXR1cm4gMTsgfQp9OwoKdGVtcGxhdGUgPGNsYXNzIFQ+CnZvaWQgYmFyKFQmJiB0KQp7CiAgICB0LmZvbygpOyAvLyA8LS0gdGFhYS1kYWFhIGZvY3VzLXBva3VzCn0KCmludCBtYWluKCkKewogICAgY29uc3QgQSBhOwogICAgYmFyKGEpOwogICAgcmV0dXJuIDA7Cn0KCg==