#include typedef tmpl[](){ int <>_ok() { return 20; } }; typedef supertmpl[]() = tmpl[]() { int <>_superok() { return <>_ok(); } }; typedef inst = supertmpl[](); int main() { int ok = inst_superok(); if (ok == 20) puts("OK"); }