I found the reason for the problem -> There was an unresolvable ambiguity (the compiler couldn't tell which base class to override. Here's what Stroustrup has to say about this issue (see page 5). http://www-plan.cs.colorado.edu/diwan/class-papers/mi.pdf[^] Thanks for your responses. I must admit, I'm curious how you all got it to work. To solve the problem, I ended up writing a wrapper class... please excuse my sad attempt at ASCII art, but here's the UML behind how I solved it.
----------- -----------
| Class A | | Class B |
/\\ /\\
-- --
| |
| |
| MyClass |_________/\| MyWrapper |
----------- \/-------------