From richardsmith at google.com Mon Jul 27 07:19:45 2015 From: richardsmith at google.com (Richard Smith) Date: Mon, 27 Jul 2015 00:19:45 -0700 Subject: [cxx-abi-dev] minor erratum: ill-formed example in 2.6.2 Message-ID: Section 2.6.2 of the ABI contains this example (irrelevant parts removed): class V2 /*...*/ { /*...*/ }; class V3 { /*...*/ }; class C2 : public virtual V3, virtual V2 { /*...*/ }; class D : /*...*/ public C2 /*...*/ { /*...*/ }; Note that the V2 base class of C2 is private, and the V2 base class of D is inaccessible. Therefore the program would be ill-formed if it created an instance of D, by DR 7. Suggest adding the (presumably) accidentally omitted "public" access specifier for the V2 base specifier. -------------- next part -------------- An HTML attachment was scrubbed... URL: From rjmccall at apple.com Mon Jul 27 18:25:14 2015 From: rjmccall at apple.com (John McCall) Date: Mon, 27 Jul 2015 11:25:14 -0700 Subject: [cxx-abi-dev] minor erratum: ill-formed example in 2.6.2 In-Reply-To: References: Message-ID: > On Jul 27, 2015, at 12:19 AM, Richard Smith wrote: > > Section 2.6.2 of the ABI contains this example (irrelevant parts removed): > > class V2 /*...*/ { /*...*/ }; > class V3 { /*...*/ }; > class C2 : public virtual V3, virtual V2 { /*...*/ }; > class D : /*...*/ public C2 /*...*/ { /*...*/ }; > > Note that the V2 base class of C2 is private, and the V2 base class of D is inaccessible. Therefore the program would be ill-formed if it created an instance of D, by DR 7. > > Suggest adding the (presumably) accidentally omitted "public" access specifier for the V2 base specifier. Thanks, fixed. John.