Meaningful blank lines get removed unintentionally. Paragraph separators, section dividers, and logical grouping gaps disappear, creating walls of text without visual breaks for human readers.
Code formatting conventions require blank lines. Style guides mandate empty lines between functions, classes, or logical blocks—removing them violates standards and reduces code navigability.
Mixed content handling is ambiguous. Should a line with only punctuation (e.g., '---') be considered empty? Definition of empty varies—strict (nothing) vs. lenient (only whitespace) vs. semantic (no meaningful content).
Data integrity for positional formats breaks. If line numbers matter (line 5 is always the timestamp), removing empties shifts positions and invalidates parsing logic expecting fixed line locations.