Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!tut.cis.ohio-state.edu!parc.xerox.com!klotz From: klotz@parc.xerox.com Newsgroups: gnu.g++.bug Subject: multiple-inheritance error message bug Message-ID: <8909140101.AA00836@fast.parc.xerox.com> Date: 14 Sep 89 01:01:36 GMT Sender: daemon@tut.cis.ohio-state.edu Distribution: gnu Organization: GNUs Not Usenet Lines: 40 In g++ The message % g++ mu.cc -o mu In function int main (): mu.cc:25: member `top' belongs to MI-distinct base classes `report' Shouldn't this message be the other way around, since "top" is a class and "report" is a member? Also, it took me a while to figure out out that "MI" means "multiple-inheritance," but I'm still not sure exactly what "MI-distinct" means. (I do understand the error itself -- in fact, I was trying what would happen.) Leigh. #include struct top { int a = 0; virtual int report() { return a; }; }; struct top_left : public top { int a = 1; }; struct top_right : public top { int a = 2; }; struct bottom : public top_left, public top_right { int b; }; main() { bottom x; printf("%d\n", x.report()); }