Programming Languages
Bug Report
A subclass override skipped the validation its base class depended on
A new exporter subclass overrode one method to add a feature and silently bypassed the base class check that kept amounts non-negative. Negative invoices reached a partner. Why inheritance made this easy, and how composition closed it.