From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12449 invoked by alias); 29 Apr 2002 13:56:02 -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 12415 invoked by uid 71); 29 Apr 2002 13:56:01 -0000 Resent-Date: 29 Apr 2002 13:56:01 -0000 Resent-Message-ID: <20020429135601.12413.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-To: nobody@gcc.gnu.org Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org, jason@redhat.com, mark@codesourcery.com Resent-Reply-To: gcc-gnats@gcc.gnu.org, gbeauchesne@mandrakesoft.com Received:(qmail 12317 invoked by uid 61); 29 Apr 2002 13:54:58 -0000 Message-Id:<20020429135458.12316.qmail@sources.redhat.com> Date: Mon, 29 Apr 2002 06:56:00 -0000 From: gbeauchesne@mandrakesoft.com Reply-To: gbeauchesne@mandrakesoft.com To: gcc-gnats@gcc.gnu.org Cc: jason@redhat.com, mark@codesourcery.com X-Send-Pr-Version:gnatsweb-2.9.3 (1.1.1.1.2.31) X-GNATS-Notify:jason@redhat.com,mark@codesourcery.com Subject: c++/6506: New STLport regression (const qualifiers) X-SW-Source: 2002-04/txt/msg01591.txt.bz2 List-Id: >Number: 6506 >Category: c++ >Synopsis: New STLport regression (const qualifiers) >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: rejects-legal >Submitter-Id: net >Arrival-Date: Mon Apr 29 06:56:00 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Gwenole Beauchesne >Release: GNU C++ version 3.1 20020429 (prerelease) >Organization: >Environment: i586-mandrake-linux-gnu >Description: Recent changes now break STLport-4.5.3 [gbeauchesne@thalys eh]$ g++-3.1 -c test_list2.cpp -save-temps test_list2.cpp: In copy constructor `test_insert_range >::test_insert_range(const test_insert_range >&)': test_list2.cpp:18: instantiated from `test_insert_range insert_range_tester(const C&, const Iter&, const Iter&) [with C = TestList, Iter = std::_List_iterator]' test_list2.cpp:30: instantiated from here test_list2.cpp:18: `const' qualifiers cannot be applied to `const TestList&' >How-To-Repeat: The following is extracted from STLport-4.5.3/test/eh/test_list.cpp: #include template class test_insert_range { Iter fFirst, fLast; const C & original; public: test_insert_range( const C& orig, Iter first, Iter last ) : original( orig ), fFirst( first ), fLast( last ) { } }; template test_insert_range insert_range_tester( const C& orig, const Iter& first, const Iter& last ) { return test_insert_range( orig, first, last ); } struct TestClass { }; typedef std::list TestList; void test_list() { TestList testList, testList2; insert_range_tester(testList, testList2.begin(), testList2.end()); } >Fix: Interestingly, removing bits related to the iterators in class test_insert_range makes it compile again. But that's not a solution. This is a regression from GNU C++ version 3.1 20020422 (prerelease) >Release-Note: >Audit-Trail: >Unformatted: