From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27200 invoked by alias); 12 Nov 2013 14:41:38 -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 Received: (qmail 25767 invoked by uid 48); 12 Nov 2013 14:40:59 -0000 From: "glisse at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug libstdc++/59087] Issues including complex.h in C++11/1y mode because of C's complex.h Date: Tue, 12 Nov 2013 14:41:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: libstdc++ X-Bugzilla-Version: 4.8.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: glisse at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_status cf_reconfirmed_on cc short_desc everconfirmed Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2013-11/txt/msg01138.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59087 Marc Glisse changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2013-11-12 CC| |glisse at gcc dot gnu.org Summary|including complex.h in |Issues including complex.h |C++11/1y mode should not |in C++11/1y mode because of |include C's complex.h |C's complex.h Ever confirmed|0 |1 --- Comment #3 from Marc Glisse --- Thanks, there are several issues. > C's provides a macro named 'I' and this breaks existing codes. Well, just include if that's what you need, and if you include , expect its natural content (except possibly for the macro "complex"). > ext/pod_char_traits.h This needs uglifying indeed. > boost/iterator/iterator_facade.hpp They should use a less risky name. > and, anyway, C's complex doesn't work on C++11 mode. > gcc4.8.2 c++11) http://melpon.org/wandbox/permlink/CnsddYRxUohlCGF1 Ah, user-defined literals... I'll let the experts comment. > gcc4.8.2 c++03) http://melpon.org/wandbox/permlink/QrBInjH6rlRs2Jdl > > > Or, if C++'s includes C's one, I think also should > behave so (I think 26.4.10 is incomprehensible.) Maybe (it mostly shouldn't have existed in the first place), indeed. Might be as simple as making it include complex.h instead of complex.