From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26507 invoked by alias); 1 Oct 2013 07:49:43 -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 26460 invoked by uid 48); 1 Oct 2013 07:49:40 -0000 From: "daniel.kruegler at googlemail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/58569] Compilation error when a class contains multiple std::function Date: Tue, 01 Oct 2013 07:49: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-Version: 4.8.1 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: daniel.kruegler at googlemail dot com 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: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2013-10/txt/msg00015.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D58569 --- Comment #6 from Daniel Kr=C3=BCgler --- (In reply to Jonathan Wakely from comment #4) Why would LWG 2132 require any such check during the instantiation of the c= lass template or during the instantiation of the default constructor? The constraints are only imposed on template members. >>From gcc-bugs-return-430872-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Oct 01 07:50:18 2013 Return-Path: Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 27441 invoked by alias); 1 Oct 2013 07:50:18 -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 Delivered-To: mailing list gcc-bugs@gcc.gnu.org Received: (qmail 27395 invoked by uid 48); 1 Oct 2013 07:50:14 -0000 From: "daniel.kruegler at googlemail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/58569] Compilation error when a class contains multiple std::function Date: Tue, 01 Oct 2013 07:50: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-Version: 4.8.1 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: daniel.kruegler at googlemail dot com 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: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2013-10/txt/msg00016.txt.bz2 Content-length: 403 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D58569 --- Comment #7 from Daniel Kr=C3=BCgler --- (In reply to Jonathan Wakely from comment #5) > And it should only happen when instantiating the converting constructor > template or converting assignment operator function, not when instantiati= ng > the class template. Thanks, that is the point I was missing. >>From gcc-bugs-return-430873-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Oct 01 07:58:36 2013 Return-Path: Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 32457 invoked by alias); 1 Oct 2013 07:58:36 -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 Delivered-To: mailing list gcc-bugs@gcc.gnu.org Received: (qmail 32400 invoked by uid 48); 1 Oct 2013 07:58:31 -0000 From: "rguenth at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug preprocessor/58580] [4.8/4.9 Regression] preprocessor goes OOM with warning for zero literals Date: Tue, 01 Oct 2013 07:58:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: preprocessor X-Bugzilla-Version: 4.8.1 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: rguenth 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: 4.8.2 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc 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-10/txt/msg00017.txt.bz2 Content-length: 2962 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58580 Richard Biener changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |manu at gcc dot gnu.org --- Comment #2 from Richard Biener --- Also fixed with -fno-diagnostic-show-caret. ltrace shows fputs("test.cpp:3:1: warning: null char"..., 0x7fbaa148c700test.cpp:3:1: warning: null character(s) preserved in literal [enabled by default] ) = 1 fflush(0x7fbaa148c700) = 0 memcpy(0x0378c04f, """, 3) = 0x0378c04f memcpy(0x037f2a40, "\003", 16) = 0x037f2a40 __errno_location() = 0x7fbaa21db698 malloc(19) = 0x0375dc60 memcpy(0x0375dc60, "enabled by default", 19) = 0x0375dc60 memcpy(0x7ffff4e3bc60, "null character(s) preserved in l"..., 38) = 0x7ffff4e3bc60 memcpy(0x7ffff4e3bc86, " ", 1) = 0x7ffff4e3bc86 memcpy(0x7ffff4e3bc87, "[", 1) = 0x7ffff4e3bc87 memcpy(0x7ffff4e3bc88, "enabled by default", 18) = 0x7ffff4e3bc88 memcpy(0x7ffff4e3bc9a, "]", 1) = 0x7ffff4e3bc9a free(0x0375dc60) = memset(0x7ffff4e3b990, '\000', 240) = 0x7ffff4e3b990 vasprintf(0x7ffff4e3bae8, 0x19eed82, 0x7ffff4e3bad0, 0x19eed82, 1) = 23 strlen("null character(s) preserved in l"...) = 59 strlen("test.cpp:4:1: warning: ") = 23 memcpy(0x03784ac0, "test.cpp:4:1: warning: ", 23) = 0x03784ac0 memcpy(0x03784ad7, "null character(s) preserved in l"..., 59) = 0x03784ad7 fopen("test.cpp", "r") = 0x37c07c0 fgets("", -1575075836, 0x37c08a0) = 0x7fbaa040f010 realloc(0x7fbaa040f010, 13107200) = 0x7fba9f78e010 fgets("", -1575075832, 0x37c08a0) = 0x7fba9f78e011 realloc(0x7fba9f78e010, 26214400) = 0x7fba9de8d010 fgets("", -1575075828, 0x37c08a0) = 0x7fba9de8d012 realloc(0x7fba9de8d010, 52428800) = 0x7fba9ac8c010 fgets("", -1575075824, 0x37c08a0) = 0x7fba9ac8c013 realloc(0x7fba9ac8c010, 104857600) = 0x7fba9488b010 fgets("", -1575075820, 0x37c08a0) = 0x7fba9488b014 realloc(0x7fba9488b010, 209715200) = 0x7fba8808a010 fgets("\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377"..., -1575075840, 0x37c08a0) = NULL fgets("\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377"..., -1575075840, 0x37c08a0) = NULL fclose(0x37c07c0) = 0 so it seems to go completely bollocks re-reading from the source for displaying the offending line.