I'm in the process of developing a framework for our internal use and thought making all inheritance virtual would avoid the diamond problem for other developers inheriting from my classes.
I looked around and found a lot of discussion on using virtual inheritance WHEN faced with the diamond issue, but nothing about preempting it.