public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/21917] New: Missing warning? (or error?)
@ 2005-06-04 22:18 igodard at pacbell dot net
  2005-06-06  1:24 ` [Bug c++/21917] Missing warning? pinskia at gcc dot gnu dot org
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: igodard at pacbell dot net @ 2005-06-04 22:18 UTC (permalink / raw)
  To: gcc-bugs

struct  virt { virt() : i(2) {} virt(int i) : i(i){} int i;  };
struct der1 : public virtual virt { der1(int i) : virt(i) {} };
struct der2 : public virtual virt { der2(int i) : virt(i) {} };
struct top : public der1, public der2 {
    top () : der1(0), der2(1) {} };
int main() { top t; }


Compiles without comment. However, the null constructor for "virt" is called
rather than the explicit constructor that is indicated by the constructor chain
from top. In fact, the der* constructors say " : virt(i)" but that
sub-constructor will never be called because virt is a virtual base class.

I don't know if it is actually an error to try to explicitly construct a virtual
base, but is sure is misleading and I think deserves at least a warning.

-- 
           Summary: Missing warning? (or error?)
           Product: gcc
           Version: 3.4.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: igodard at pacbell dot net
                CC: gcc-bugs at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21917


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2008-06-05 23:07 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-21917-6594@http.gcc.gnu.org/bugzilla/>
2005-11-24  2:25 ` [Bug c++/21917] Missing warning? gdr at gcc dot gnu dot org
2007-01-09 15:02 ` manu at gcc dot gnu dot org
2007-01-09 16:36 ` igodard at pacbell dot net
2007-01-20 16:52 ` [Bug c++/21917] Missing warning when trying to explicitly construct a virtual base manu at gcc dot gnu dot org
2008-06-05 23:07 ` r_q_einstein-gccgnuorg at yahoo dot com
2005-06-04 22:18 [Bug c++/21917] New: Missing warning? (or error?) igodard at pacbell dot net
2005-06-06  1:24 ` [Bug c++/21917] Missing warning? pinskia at gcc dot gnu dot org
2005-07-13 13:17 ` pinskia at gcc dot gnu dot org
2005-07-13 13:31 ` pinskia at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).