Because `i` isn't an int, it's an initializer_list, and you almost never want to actually create an initializer_list instead of an int? Seems pretty understandable to me.
It's unexpected. Nobody ever* wanted to assign an initializer list to a named variable.