It doesn't seem necessary. For instance `Vec<bool>` could be enumerable even though it is not `Copy`.