From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8688 invoked by alias); 2 May 2012 00:55:10 -0000 Received: (qmail 8678 invoked by uid 22791); 2 May 2012 00:55:09 -0000 X-SWARE-Spam-Status: No, hits=-4.3 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00,KHOP_THREADED 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; Wed, 02 May 2012 00:54:56 +0000 From: "marc.glisse at normalesup dot org" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/53177] 20_util/function/cons/callable.cc failed with -m32 -march=corei7 Date: Wed, 02 May 2012 00:55: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-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: marc.glisse at normalesup dot 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-Changed-Fields: CC 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 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: 2012-05/txt/msg00043.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53177 Marc Glisse changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |marc.glisse at normalesup | |dot org --- Comment #4 from Marc Glisse 2012-05-02 00:54:38 UTC --- (In reply to comment #2) > I was seeing an ICE in the same place with an earlier version of the changes > which caused this testcase regression. I have only managed to reduce it to 10k > lines so far - that delta-reduced file is attached, I haven't had time to try > manually reducing it. If you only want a small example causing the ICE, here is one (-std=c++0x is enough, no need for -m32 or -march). If you want something that looks vaguely like a valid C++ program, it's going to be bigger... extern "C++" namespace __attribute__ ) template < } template < typename > struct add_rvalue_reference ; template < _Tp > typename declval ( ) noexcept ; struct { typedef long __type } struct { } template < typename _Res , typename ... _ArgTypes > class function < _Res ( _ArgTypes ) { _Signature_type ( _ArgTypes ) template < typename _Functor > using _Invoke decltype ( ( declval < _Functor > ) ) template < typename , typename > struct _CheckResult { } template < ; template < typename _Functor > using _Callable _CheckResult < _Invoke < _Functor > , _Res > template < typename , typename > using _Requires template < typename _Functor , typename = _Requires < _Callable < _Functor > , void > > function ( _Functor ; } ; f ( function < void > ) { f ( [ ] )