Probably to minimize the changes.  The main requirement was that all calls eventually go through the report(IEclError *) function, which doReportWarning does.