220 31700 <CAFk2RUZW+rW5NsDQGff25eF6Kj1RuMwbhE24y800GE584pdhpg@mail.gmail.com> article
Path: news.gmane.org!.POSTED!not-for-mail
From: Ville Voutilainen <ville.voutilainen@gmail.com>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: Simplify virtual inheritance rules
Date: Sun, 19 Mar 2017 20:32:04 +0200
Lines: 28
Approved: news@gmane.org
Message-ID: <CAFk2RUZW+rW5NsDQGff25eF6Kj1RuMwbhE24y800GE584pdhpg@mail.gmail.com>
References: <6aa2e439-345e-4f04-8843-f38bb7b825b2@isocpp.org>
 <1785771.9FtZOUdvrM@tjmaciei-mobl1> <CAFk2RUZ1xwEG_L-LG-FE9oKoDeEbVmBqvc6LRwdnOeWV+KENgw@mail.gmail.com>
 <2697868.vdYFrBLFDC@tjmaciei-mobl1>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: blaine.gmane.org
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
X-Trace: blaine.gmane.org 1489948325 9937 195.159.176.226 (19 Mar 2017 18:32:05 GMT)
X-Complaints-To: usenet@blaine.gmane.org
NNTP-Posting-Date: Sun, 19 Mar 2017 18:32:05 +0000 (UTC)
To: "ISO C++ Standard - Future Proposals" <std-proposals@isocpp.org>
Original-X-From: std-proposals+bncBC5JHI7A7ALRBJM5XPDAKGQEIXIN2WY@isocpp.org Sun Mar 19 19:32:00 2017
Return-path: <std-proposals+bncBC5JHI7A7ALRBJM5XPDAKGQEIXIN2WY@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-yw0-f200.google.com ([209.85.161.200])
	by blaine.gmane.org with esmtp (Exim 4.84_2)
	(envelope-from <std-proposals+bncBC5JHI7A7ALRBJM5XPDAKGQEIXIN2WY@isocpp.org>)
	id 1cpfcV-00024A-Vg
	for gclcip-std-proposals@m.gmane.org; Sun, 19 Mar 2017 19:32:00 +0100
Original-Received: by mail-yw0-f200.google.com with SMTP id o4sf393873220ywd.7
        for <gclcip-std-proposals@m.gmane.org>; Sun, 19 Mar 2017 11:32:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=mime-version:in-reply-to:references:from:date:message-id:subject:to
         :x-original-sender:x-original-authentication-results:reply-to
         :precedence:mailing-list:list-id:x-spam-checked-in-group:list-post
         :list-help:list-archive:list-subscribe:list-unsubscribe;
        bh=8eYGY/pjyj2wJ/857xd3PUcXypD5qVwBI5InRD9hM4I=;
        b=pz1fXG1BQAh0yi0jXyZhxeBTtr5b1ykAyvk82NfytoG1h/XmSXy+WUAA4wxSLPhG/w
         kXb4PcFNhERDe0XNSn2rGuE22Z6pHg9p0txaitGMSJuk+pjuxIygIrrcUMM60dkGyPip
         hlwR5fBqbNUd90mq/QpTzqbmaKrVvfIMFp1PYgN83V3+5WtTXcR2tYXNBNyUF2efNpYc
         UPZ71z/ijBSAXvHM5VssTbwin9LhJvG0//bbntUQ8W8UP65RsfOCZaGQAGY6zoP4S4sx
         b8WzrTbyhxotq7mC9aeL1ptyMwpz15ri9AYOQVk2cmm0ZcCvHomIPBET9kfnxZB233/z
         gE9Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:in-reply-to:references:from:date
         :message-id:subject:to:x-original-sender
         :x-original-authentication-results:reply-to:precedence:mailing-list
         :list-id:x-spam-checked-in-group:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=8eYGY/pjyj2wJ/857xd3PUcXypD5qVwBI5InRD9hM4I=;
        b=GW3Eiak2mihu9ZfRGaCMmcXOOfhWe8QjhZ6K0LFpLVz2OBjYP+V4PV2yJo6xE/W9NO
         3nH7GK9WZf+d07IhL6lrOEjhF2Dywmp0KwP3eI7AmiWt7qrka82CVIN79+gc9r1J3k6+
         KZq+UVU63OpkRyK0gTH0zCgpg9YJljXEkz9y8f23pF7gLM3mEQ92TdRIQCl5wqv0BHBw
         Q5wgOdxgodM+LdBZIN0lFA40LN4SGawWbkvpMd2AOCM2fsAdjsnBQgmRF71Yzi77q3OM
         lwlpvm0FmzxUdOkTfGVpopQpFKvRwiq0NBUM3O4ibDE+lujUEUt89EZpbjh7LZusdWNM
         2sZA==
X-Gm-Message-State: AFeK/H2sp5Q3O6cq94TtfBBj/at0RxYpHYZfk+4XjnMuWhRnc588h0VfkyfSavasqL0TsA==
X-Received: by 10.129.87.15 with SMTP id l15mr4795274ywb.0.1489948325665;
        Sun, 19 Mar 2017 11:32:05 -0700 (PDT)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.157.89.216 with SMTP id u24ls6177280otg.40.gmail; Sun, 19 Mar
 2017 11:32:05 -0700 (PDT)
X-Received: by 10.202.62.138 with SMTP id l132mr13610870oia.128.1489948325038;
        Sun, 19 Mar 2017 11:32:05 -0700 (PDT)
Original-Received: from mail-ot0-x22d.google.com (mail-ot0-x22d.google.com. [2607:f8b0:4003:c0f::22d])
        by mx.google.com with ESMTPS id f48si5949486otf.310.2017.03.19.11.32.05
        for <std-proposals@isocpp.org>
        (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
        Sun, 19 Mar 2017 11:32:05 -0700 (PDT)
Received-SPF: pass (google.com: domain of ville.voutilainen@gmail.com designates 2607:f8b0:4003:c0f::22d as permitted sender) client-ip=2607:f8b0:4003:c0f::22d;
Original-Received: by mail-ot0-x22d.google.com with SMTP id a12so51478202ota.0
        for <std-proposals@isocpp.org>; Sun, 19 Mar 2017 11:32:05 -0700 (PDT)
X-Received: by 10.157.7.230 with SMTP id 93mr10683412oto.275.1489948324693;
 Sun, 19 Mar 2017 11:32:04 -0700 (PDT)
Original-Received: by 10.157.13.22 with HTTP; Sun, 19 Mar 2017 11:32:04 -0700 (PDT)
In-Reply-To: <2697868.vdYFrBLFDC@tjmaciei-mobl1>
X-Original-Sender: ville.voutilainen@gmail.com
X-Original-Authentication-Results: mx.google.com;       dkim=pass
 header.i=@gmail.com;       spf=pass (google.com: domain of
 ville.voutilainen@gmail.com designates 2607:f8b0:4003:c0f::22d as permitted
 sender) smtp.mailfrom=ville.voutilainen@gmail.com;       dmarc=pass (p=NONE
 sp=NONE dis=NONE) header.from=gmail.com
Precedence: list
Mailing-list: list std-proposals@isocpp.org; contact std-proposals+owners@isocpp.org
List-ID: <std-proposals.isocpp.org>
X-Google-Group-Id: 399137483710
List-Post: <https://groups.google.com/a/isocpp.org/group/std-proposals/post>, <mailto:std-proposals@isocpp.org>
List-Help: <https://support.google.com/a/isocpp.org/bin/topic.py?topic=25838>, <mailto:std-proposals+help@isocpp.org>
List-Archive: <https://groups.google.com/a/isocpp.org/group/std-proposals/>
List-Subscribe: <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>,
 <mailto:std-proposals+subscribe@isocpp.org>
List-Unsubscribe: <mailto:googlegroups-manage+399137483710+unsubscribe@googlegroups.com>,
 <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>
Xref: news.gmane.org gmane.comp.lang.c++.isocpp.proposals:31700
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/31700>

On 19 March 2017 at 20:20, Thiago Macieira <thiago@macieira.org> wrote:
>> Right, so this proposal doesn't produce UB. That leaves the other
>> compatibility issues.
>
> Which ones?

See a couple of emails ago. The cases where the most-derived class
doesn't have access to the constructor
of the virtual base; that makes intentionally ill-formed cases well-formed.

> Does it make a difference in behaviour which base class actually called the
> virtual base's construtor? Is there any situation in which it changes with
> this proposal?

There may well be cases where the designer of the class hierarchy
intends to force the authors
of derived classes to provide a value to be used for initializing the
virtual base. It might also be the case
that that value is an invariant for the hierarchy, although I'm not
sure whether anyone writes such hierarchies.
Practically, that means passing 'this' up the hierarchy into the virtual base.

-- 
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAFk2RUZW%2BrW5NsDQGff25eF6Kj1RuMwbhE24y800GE584pdhpg%40mail.gmail.com.

.
