I have this rare case of a site where we have a node with an empty body, but the summary is not empty. When outputting the field on the full content view mode with the default format (i.e. the full body content, not the summary), Drupal does render the field wrappers, but an empty body:
<div class="field field-name-body field-type-text-with-summary field-label-hidden"><div class="field-items"><div property="content:encoded" class="field-item even"></div></div></div>
In my case, this gives us unwanted markup, and given our CSS styling, unwanted style output.
Should the field view function not check for output, before actually rendering the field? In this case that would be: text_field_formatter_view(...)