From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15352 invoked by alias); 14 Nov 2002 14:06:04 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 15332 invoked by uid 71); 14 Nov 2002 14:06:02 -0000 Date: Wed, 20 Nov 2002 17:57:00 -0000 Message-ID: <20021114140602.15331.qmail@sources.redhat.com> To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org, From: Gabriel Dos Reis Subject: Re: c++/8577: postfix operator not inherithed Reply-To: Gabriel Dos Reis X-SW-Source: 2002-11/txt/msg00676.txt.bz2 List-Id: The following reply was made to PR c++/8577; it has been noted by GNATS. From: Gabriel Dos Reis To: Delana.Lorenzo@libero.it Cc: gcc-gnats@gcc.gnu.org Subject: Re: c++/8577: postfix operator not inherithed Date: 14 Nov 2002 15:06:02 +0100 Delana.Lorenzo@libero.it writes: [...] | >Class: sw-bug This is not a bug. [...] | class A | { | public: | virtual void toimplement () = 0; | void implemented () { toimplement(); } | virtual void operator ++ () = 0; | void operator ++ (int) { printf ("Postfix inc\n"); } | }; | | class B : public A { | public: | void toimplement () { printf ("IMPLEMENTATION of pure\n"); } | void operator ++ () { printf ("Prefix inc\n"); } ^^^^^^^^^^^ This hides the name of the postfix function in A. In short: don't overload a virtual function. -- Gaby