220 31698 <CAFk2RUZ1xwEG_L-LG-FE9oKoDeEbVmBqvc6LRwdnOeWV+KENgw@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:12:25 +0200
Lines: 23
Approved: news@gmane.org
Message-ID: <CAFk2RUZ1xwEG_L-LG-FE9oKoDeEbVmBqvc6LRwdnOeWV+KENgw@mail.gmail.com>
References: <6aa2e439-345e-4f04-8843-f38bb7b825b2@isocpp.org>
 <25e054ca-aac4-4bcc-805a-4e1357de4f37@isocpp.org> <CAFk2RUZNBo6oE9M4uZbN97yCDHwsvj_zKN0qV8EAX=wmQTX9Xw@mail.gmail.com>
 <1785771.9FtZOUdvrM@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 1489947153 9210 195.159.176.226 (19 Mar 2017 18:12:33 GMT)
X-Complaints-To: usenet@blaine.gmane.org
NNTP-Posting-Date: Sun, 19 Mar 2017 18:12:33 +0000 (UTC)
To: "ISO C++ Standard - Future Proposals" <std-proposals@isocpp.org>
Original-X-From: std-proposals+bncBC5JHI7A7ALRBCMUXPDAKGQER2AQNPI@isocpp.org Sun Mar 19 19:12:28 2017
Return-path: <std-proposals+bncBC5JHI7A7ALRBCMUXPDAKGQER2AQNPI@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-pf0-f197.google.com ([209.85.192.197])
	by blaine.gmane.org with esmtp (Exim 4.84_2)
	(envelope-from <std-proposals+bncBC5JHI7A7ALRBCMUXPDAKGQER2AQNPI@isocpp.org>)
	id 1cpfJU-0001AG-PC
	for gclcip-std-proposals@m.gmane.org; Sun, 19 Mar 2017 19:12:20 +0100
Original-Received: by mail-pf0-f197.google.com with SMTP id y6sf208251492pfa.3
        for <gclcip-std-proposals@m.gmane.org>; Sun, 19 Mar 2017 11:12:27 -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=390AAIk8N0Qha9vhsqQlOU1K0A0JD+1Zqs+7hdWQ920=;
        b=j59TNdmsTYGYbI7obhaXklhsCEbbz9yg8ytIhb37Ry9cGa39Aog4r5FieBqeoeWOAK
         jY9+5sR+nq+8/D0bVeZw5UbiOtXBXVxDzS4PuQfuo1O7JSPinhklbBBegcMPwHqqCPnV
         YGRg3rUW4bqpVSlyoRs7c6QnLe58sHNQcQbD9SxjAKGS85hBOQwHUgiKhJ76wDC7hY+b
         xf9G5E6QRgDkrpe8bekxQFKRYgTc/OUH6RMhMXHR2CLyT9vbJatVSNtT9We1AcJ6TpTD
         ZCHg4YayFxqmtlAFOZY+ZR9wMDVzpRBB2PT3Cr/kymOG/jlNAYWVSMtEI39gW6hdwwqz
         SXjA==
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=390AAIk8N0Qha9vhsqQlOU1K0A0JD+1Zqs+7hdWQ920=;
        b=ApyhNvNWtY4EG/+PCntABr1DfenxR5XESF/KOlzjbm0xvchnNjYvFxIADhW5VC1iS9
         SqRGZjRLY5Ubi1HB5cnLYsJmkVYSsIouzWsFz+PpXrd1J/wMSUbeKDlUNEco8Ooiddhx
         TKHDaopt8TjAO0ekwcblgpmlX91snRhvQb+l5jlyiHpOpPbR08zsrh0P9uHMhkU2rw27
         il9nIM0LjKOj/Nmg/LETs6Q2RsnZnr3kf2jO8ApOD6Ufl7OMWxYJfBzrBQdADt9SfTBP
         NRxEt/wDANpMtHFbmjrEfxKHHalyui4XzAx28xYlzt8K+eqqfZIVqC7dE3/X+t8snZff
         dCJg==
X-Gm-Message-State: AFeK/H3yuzYT9NUEf3Vqkt0d2s9ZF4VTQxOomroYfEKZjCb5y0gLvg5iIlK1Q+T7Q4L2Xw==
X-Received: by 10.99.110.1 with SMTP id j1mr14191100pgc.52.1489947146482;
        Sun, 19 Mar 2017 11:12:26 -0700 (PDT)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.157.56.232 with SMTP id k37ls12168938ote.15.gmail; Sun, 19 Mar
 2017 11:12:25 -0700 (PDT)
X-Received: by 10.157.48.59 with SMTP id d56mr13153291otc.81.1489947145764;
        Sun, 19 Mar 2017 11:12:25 -0700 (PDT)
Original-Received: from mail-oi0-x22c.google.com (mail-oi0-x22c.google.com. [2607:f8b0:4003:c06::22c])
        by mx.google.com with ESMTPS id m36si5939861otd.144.2017.03.19.11.12.25
        for <std-proposals@isocpp.org>
        (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
        Sun, 19 Mar 2017 11:12:25 -0700 (PDT)
Received-SPF: pass (google.com: domain of ville.voutilainen@gmail.com designates 2607:f8b0:4003:c06::22c as permitted sender) client-ip=2607:f8b0:4003:c06::22c;
Original-Received: by mail-oi0-x22c.google.com with SMTP id w81so13844157oig.1
        for <std-proposals@isocpp.org>; Sun, 19 Mar 2017 11:12:25 -0700 (PDT)
X-Received: by 10.202.54.4 with SMTP id d4mr13652475oia.45.1489947145465; Sun,
 19 Mar 2017 11:12:25 -0700 (PDT)
Original-Received: by 10.157.13.22 with HTTP; Sun, 19 Mar 2017 11:12:25 -0700 (PDT)
In-Reply-To: <1785771.9FtZOUdvrM@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:c06::22c 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:31698
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/31698>

On 19 March 2017 at 19:58, Thiago Macieira <thiago@macieira.org> wrote:
>> The language statically guarantees that the initialization of the
>> VirtualBase is performed. Your
>> suggestion turns that static guarantee into undefined behavior.
>
> The complete constructor must exist if the direct base class is not abstract.
> In other words, the complete constructor must exist if a user is able to
> construct that class.
>
> The compiler will have to emit the base object constructor for all of those
> classes, since another class down the line could choose to construct the
> virtual base directly.


Right, so this proposal doesn't produce UB. That leaves the other
compatibility issues.

-- 
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/CAFk2RUZ1xwEG_L-LG-FE9oKoDeEbVmBqvc6LRwdnOeWV%2BKENgw%40mail.gmail.com.

.
