aboutsummaryrefslogtreecommitdiff
path: root/libgcc/libgcov-util.c
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2021-08-05 13:34:00 +0100
committerJonathan Wakely <jwakely@redhat.com>2021-08-05 15:16:58 +0100
commit7b1de3eb9ed3f8dde54732d88520292c5ad1157d (patch)
tree50945c8bc786a899aeae7355e645b3d2cda1a32f /libgcc/libgcov-util.c
parent72264a639729a5dcc21dbee304717ce22b338bfd (diff)
downloadgcc-7b1de3eb9ed3f8dde54732d88520292c5ad1157d.zip
gcc-7b1de3eb9ed3f8dde54732d88520292c5ad1157d.tar.gz
gcc-7b1de3eb9ed3f8dde54732d88520292c5ad1157d.tar.bz2
libstdc++: Move attributes that follow requires-clauses [PR101782]
As explained in the PR, the grammar in the Concepts TS means that a [ token following a requires-clause is parsed as part of the logical-or-expression rather than the start of an attribute. That makes the following ill-formed when using -fconcepts-ts: template<typename T> requires foo<T> [[nodiscard]] int f(T); This change moves all attributes that follow a requires-clause to the end of the function declarator. Signed-off-by: Jonathan Wakely <jwakely@redhat.com> libstdc++-v3/ChangeLog: PR libstdc++/101782 * include/bits/ranges_base.h (ranges::begin, ranges::end) (ranges::rbegin, ranges::rend, ranges::size, ranges::ssize) (ranges::empty, ranges::data): Move attribute to the end of the declarator. * include/bits/stl_iterator.h (__gnu_cxx::__normal_iterator) (common_iterator): Likewise for non-member operator functions. * include/std/ranges (views::all, views::filter) (views::transform, views::take, views::take_while, views::drop) (views::drop_while, views::join, views::lazy_split) (views::split, views::counted, views::common, views::reverse) (views::elements): Likewise. * testsuite/std/ranges/access/101782.cc: New test.
Diffstat (limited to 'libgcc/libgcov-util.c')
0 files changed, 0 insertions, 0 deletions