As you may know recv.foo= value always return value, no matter what the foo= method returns.
So in general the return value of assignment methods might differ and is probably best to be ignored.
Is there any reason to call close_on_exec= with send/__send__, or to use its return value?
I would be on the side of "changing this should not hurt", but it seems other committers do not necessarily agree (I guess their point is code should not rely on that anyway).