Whatever we do on this issue, I think we should assume units_func is responsible. So if it's re-wording exceptions, or raising warnings it should be the units_func. Given that, the options are:
 - Raise a re-worded error. Seems somewhat harsh as the consequences for some general (and potentially long running!) processing code couldn't easily be predicted by the user.
 - Raise a warning and set the units to "unknown". As @esc24 suggests, we can add a "To avoid this warning..." phrase as well.
 - Do nothing - leave it as it is. If/when the error occurs we have more context to decide what to do.

I was going to plump for the warning, but then I realised that I have no idea what taking the variance of a logarithmic quantity would actually mean! It's applying a linear analysis to a non-linear phenomenon. So now I'm very tempted to leave it as is and wait for some more context!