Enable -Woverloaded-virtual to enforce correct C++ behaviour when overriding virtuals