From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30114 invoked by alias); 4 May 2012 20:18:42 -0000 Received: (qmail 30100 invoked by uid 22791); 4 May 2012 20:18:40 -0000 X-SWARE-Spam-Status: No, hits=-4.3 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00,KHOP_THREADED X-Spam-Check-By: sourceware.org Received: from localhost (HELO gcc.gnu.org) (127.0.0.1) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 04 May 2012 20:18:27 +0000 From: "dimitrisdad at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/53225] static operator new in multiple inheritance carries incorrect type information for the class Date: Fri, 04 May 2012 20:18:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c++ X-Bugzilla-Keywords: X-Bugzilla-Severity: minor X-Bugzilla-Who: dimitrisdad at gmail dot com X-Bugzilla-Status: WAITING X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2012-05/txt/msg00494.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53225 --- Comment #14 from Thomas W. Lynch 2012-05-04 20:18:02 UTC --- I went through the life time issues in detail in prior comments. The C++ rules for life time of an instance do not apply to those of the life time of a class. Or are you saying these are not distinct? For what reason is static type information known at compile time not available to operator new - which is called at run time? Also, if operator new is to be an such an exception that static type information can not be accessed in it, as it can be in every other operator or method - then why doesn't the compiler say anything about it? Should there not be a warning or some sort that an artificial constraint is being applied in order to satisfy someone's interpretation of object lifetimes according to the standard?