じゃ問題

struct X{
 []operator=(const X&) -> std::result_of<decltype(&X::operator=)>::type { return *this; }
};

これは正しいでしょうか