D-Programming-Language/dmd — pull request #656 by yebblies (2012-01-29 15:32:34+00:00)
Title: Issue 2789 - Functions overloads are not checked for conflicts

Two issues here:

- The check in `overloadInsert` is disabled as it can't work until semantic has been run on all overloads. This has been changed so that the check and the actual insertion can be run seperately.

- The check is out of date. `Type::covariant` is no longer suitable, as it allows a much wider set of conversions and requires return type covariance, which is not needed for two overloads to conflict. The new function to perform this check is `TypeFunction::overloadConflict`.

http://d.puremagic.com/issues/show_bug.cgi?id=2789