D-Programming-Language/dmd — pull request #3278 by yebblies (2014-02-17 15:36:53+00:00)
Title: [DDMD] [refactor] Move op_overload into a visitor class

Fun fact: the `op_overload` functions in `BinExp` and derived classes were _not_ overrides of `UnaExp::op_overload` and were not virtual, as `UnaExp` is not a base class of `BinExp`. This worked because they were always called from semantic which has the correct dynamic type!

DDMD would have caught this, but I'm compiling with -d because I'm not emitting `override` correctly.