From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30716 invoked by alias); 10 May 2011 10:18:01 -0000 Received: (qmail 30707 invoked by uid 22791); 10 May 2011 10:18:01 -0000 X-SWARE-Spam-Status: No, hits=-2.7 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 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; Tue, 10 May 2011 10:17:47 +0000 From: "redi at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/48940] GCC fails to issue expected error 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: redi at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED 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 Date: Tue, 10 May 2011 10:18:00 -0000 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: 2011-05/txt/msg00811.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48940 --- Comment #4 from Jonathan Wakely 2011-05-10 10:07:53 UTC --- (In reply to comment #2) > Sorry to be cryptic as to the part of the standard I was talking about. Yes, I > was referring to report 391/589. > > Yes, I agree that g++ should not issue an error for this file running in C++03 > mode. (I assume you mean C++0x here) DR 391 was resolved in 2005 and G++'s behaviour was changed intentionally, see PR 25950 > What I am filing a bug about is that g++ used to issue an error running in > C++98 mode, and now g++ does not issue an error running in C++98 mode. I claim > that it should issue an error, because I understood issue the defect reports > only to affect the C++03 standardization. Is this correct? Technically yes, but the intent of the committee is that it should work, and implementing that is more useful for users. Does it actually serve any advantage to reject the code, other than strict conformance? With extended SFINAE in C++0x you could make use of it, but the code is valid in C++0x, and extended SFINAE isn't part of C++98. There are lots of DRs that G++ implements, counter to the exact wording in C++98 or C++03. Jason, as the author of the fix for PR 25950, do you have an opinion?