As far as I can work out, it's not possible for the ```units``` or ```self._units``` to be actually set to ```None```.

If the ```units``` property setter is provided with ```None``` as an argument, then ```unit = iris.unit.as_unit(None)``` returns a unit of ```unknown```.

So you should be able to remove the ```self.units is None``` test and tidy the above associated comment.