Why are you using multiple inheritance? I've been programming for over three decades now, and I still haven't found a situation where I want to use multiple inheritance.
I don't think the a<b<c change is going to do anyone any favors: If someone doesn't understand the language enough to not write such bugs, the situation is not going to improve by making the language more complicated, and accommodating this chaining will definitely go in that direction. Wouldn't it be better to make the compiler complain if a bool is used with an arithmetic comparator, unless it's explicitly cast to bool or something? So if you really want the current behavior of a<b<c you would have to write static_cast<bool>(a<b)<c, or the compiler would warn. Just an idea.
I work fine in C++, mostly staying away from clever compile-time template magic. The language is certainly too complicated, but you don't need to understand every dark corner of the language to use it productively.