public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libstdc++/64657] New: Support iterators with overloaded operator-comma
@ 2015-01-18 16:55 redi at gcc dot gnu.org
  2015-01-18 17:05 ` [Bug libstdc++/64657] " redi at gcc dot gnu.org
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: redi at gcc dot gnu.org @ 2015-01-18 16:55 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64657

            Bug ID: 64657
           Summary: Support iterators with overloaded operator-comma
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Keywords: rejects-valid
          Severity: minor
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: redi at gcc dot gnu.org

It's not possible to use several libstdc++ algorithms with iterators that have
overloaded comma operators, due to expressions like:

  ++__beg, ++__pos;


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug libstdc++/64657] Support iterators with overloaded operator-comma
  2015-01-18 16:55 [Bug libstdc++/64657] New: Support iterators with overloaded operator-comma redi at gcc dot gnu.org
@ 2015-01-18 17:05 ` redi at gcc dot gnu.org
  2015-04-29 15:22 ` redi at gcc dot gnu.org
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: redi at gcc dot gnu.org @ 2015-01-18 17:05 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64657

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2015-01-18
           Assignee|unassigned at gcc dot gnu.org      |redi at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Created attachment 34477
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34477&action=edit
Cast expressions to void when separated by comma

This patch fixes all the places I found. I'll commit it during stage1.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug libstdc++/64657] Support iterators with overloaded operator-comma
  2015-01-18 16:55 [Bug libstdc++/64657] New: Support iterators with overloaded operator-comma redi at gcc dot gnu.org
  2015-01-18 17:05 ` [Bug libstdc++/64657] " redi at gcc dot gnu.org
@ 2015-04-29 15:22 ` redi at gcc dot gnu.org
  2015-04-29 15:39 ` redi at gcc dot gnu.org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: redi at gcc dot gnu.org @ 2015-04-29 15:22 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64657

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Author: redi
Date: Wed Apr 29 15:22:13 2015
New Revision: 222579

URL: https://gcc.gnu.org/viewcvs?rev=222579&root=gcc&view=rev
Log:
        PR libstdc++/64657
        * include/bits/basic_string (basic_string::_S_copy_chars): Cast
        expression to void.
        * include/bits/locale_facets_nonio.tcc (money_get::_M_extract,
        time_get::_M_extract_num, time_get::_M_extract_name,
        time_get::_M_extract_wday_or_month): Likewise.
        * include/bits/stl_algo.h (__includes, __replace_copy_if,
        __is_sorted_until, __is_permutation, transform): Likewise.
        * include/bits/stl_algobase.h (swap_ranges, __copy_move::__copy_m,
        __equal::equal, __lexicographical_compare_impl, equal): Likewise.
        * include/bits/stl_numeric.h (inner_product): Likewise.
        * include/bits/stl_uninitialized.h (__uninitialized_copy_a): Likewise.
        * testsuite/util/testsuite_iterators.h (output_iterator_wrapper,
        input_iterator_wrapper): Declare unusable comma operator.
        * testsuite/21_strings/basic_string/cons/char/64657.cc: New.
        * testsuite/21_strings/basic_string/modifiers/assign/char/64657.cc:
        New.

Added:
    trunk/libstdc++-v3/testsuite/21_strings/basic_string/cons/char/64657.cc
   
trunk/libstdc++-v3/testsuite/21_strings/basic_string/modifiers/assign/char/64657.cc
Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/include/bits/basic_string.h
    trunk/libstdc++-v3/include/bits/locale_facets_nonio.tcc
    trunk/libstdc++-v3/include/bits/stl_algo.h
    trunk/libstdc++-v3/include/bits/stl_algobase.h
    trunk/libstdc++-v3/include/bits/stl_numeric.h
    trunk/libstdc++-v3/include/bits/stl_uninitialized.h
    trunk/libstdc++-v3/testsuite/util/testsuite_iterators.h


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug libstdc++/64657] Support iterators with overloaded operator-comma
  2015-01-18 16:55 [Bug libstdc++/64657] New: Support iterators with overloaded operator-comma redi at gcc dot gnu.org
  2015-01-18 17:05 ` [Bug libstdc++/64657] " redi at gcc dot gnu.org
  2015-04-29 15:22 ` redi at gcc dot gnu.org
@ 2015-04-29 15:39 ` redi at gcc dot gnu.org
  2015-05-23 11:18 ` fdumont at gcc dot gnu.org
  2015-06-22 15:09 ` redi at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: redi at gcc dot gnu.org @ 2015-04-29 15:39 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64657

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED
   Target Milestone|---                         |6.0

--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Fixed


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug libstdc++/64657] Support iterators with overloaded operator-comma
  2015-01-18 16:55 [Bug libstdc++/64657] New: Support iterators with overloaded operator-comma redi at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2015-04-29 15:39 ` redi at gcc dot gnu.org
@ 2015-05-23 11:18 ` fdumont at gcc dot gnu.org
  2015-06-22 15:09 ` redi at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: fdumont at gcc dot gnu.org @ 2015-05-23 11:18 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64657

--- Comment #4 from François Dumont <fdumont at gcc dot gnu.org> ---
Author: fdumont
Date: Sat May 23 11:17:38 2015
New Revision: 223605

URL: https://gcc.gnu.org/viewcvs?rev=223605&root=gcc&view=rev
Log:
2015-05-23  François Dumont  fdumont@gcc.gnu.org>

        PR libstdc++/64657
        * include/debug/functions.h (__check_sorted_aux): Cast expression to
        void.

Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/include/debug/functions.h
>From gcc-bugs-return-487143-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Sat May 23 12:20:43 2015
Return-Path: <gcc-bugs-return-487143-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 68398 invoked by alias); 23 May 2015 12:20:42 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 68354 invoked by uid 48); 23 May 2015 12:20:36 -0000
From: "paboyle at ph dot ed.ac.uk" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c++/66153] Internal compiler error in nested template function
Date: Sat, 23 May 2015 12:20: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: 5.1.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: major
X-Bugzilla-Who: paboyle at ph dot ed.ac.uk
X-Bugzilla-Status: UNCONFIRMED
X-Bugzilla-Resolution:
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: <bug-66153-4-beqidrR3Uw@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-66153-4@http.gcc.gnu.org/bugzilla/>
References: <bug-66153-4@http.gcc.gnu.org/bugzilla/>
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: 2015-05/txt/msg01983.txt.bz2
Content-length: 797

https://gcc.gnu.org/bugzilla/show_bug.cgi?idf153

--- Comment #3 from Peter Boyle <paboyle at ph dot ed.ac.uk> ---
http://stackoverflow.com/questions/30411079/counting-template-recursion-nest-depth

Appears to affect all versions of g++ with various errors.

Used:
http://melpon.org/wandbox/permlink/eK2AVfZXXss0ZDu6

All versions of clang after 3.1 accept the code.

Disambiguating "function(Container)" from function<enable_if...>
manually by renaming function(Container) to ffunction(Container) makes it
operate in the same way as ICPC and Clang.

However, this should not have been necessary because substitution failure
should have caused it to select the right "function" in every case

At least, I believe it should work as original, clang believes and icpc
believes, but g++ does not.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug libstdc++/64657] Support iterators with overloaded operator-comma
  2015-01-18 16:55 [Bug libstdc++/64657] New: Support iterators with overloaded operator-comma redi at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2015-05-23 11:18 ` fdumont at gcc dot gnu.org
@ 2015-06-22 15:09 ` redi at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: redi at gcc dot gnu.org @ 2015-06-22 15:09 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64657

--- Comment #5 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Author: redi
Date: Mon Jun 22 15:09:14 2015
New Revision: 224736

URL: https://gcc.gnu.org/viewcvs?rev=224736&root=gcc&view=rev
Log:
        PR libstdc++/64657
        * include/bits/stl_uninitialized.h
        (__uninitialized_copy::__uninit_copy): Cast expression to void.

Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/include/bits/stl_uninitialized.h


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-06-22 15:09 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-18 16:55 [Bug libstdc++/64657] New: Support iterators with overloaded operator-comma redi at gcc dot gnu.org
2015-01-18 17:05 ` [Bug libstdc++/64657] " redi at gcc dot gnu.org
2015-04-29 15:22 ` redi at gcc dot gnu.org
2015-04-29 15:39 ` redi at gcc dot gnu.org
2015-05-23 11:18 ` fdumont at gcc dot gnu.org
2015-06-22 15:09 ` redi at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).