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

            Bug ID: 112737
           Summary: [14 Regression] g++.dg/modules/xtreme-header-2_b.C
                    -std=c++2b (test for excess errors)
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: hp at gcc dot gnu.org
                CC: redi at gcc dot gnu.org
  Target Milestone: ---
            Target: cris-elf

With r14-5794-g7a6a29c455e775 "libstdc++: Define std::ranges::to for C++23
(P1206R7) [PR111055]" this test-suite regression was introduced for various
targets:

Running /x/gcc/testsuite/g++.dg/modules/modules.exp ...
[...]
FAIL: g++.dg/modules/xtreme-header-2_b.C -std=c++2b (test for excess errors)

According to g++.log, for cris-elf:

Excess errors:
/src/gcc/testsuite/g++.dg/modules/xtreme-header-2_a.H: error: conflicting
global module declaration 'template<template<class ...> class _Cont, class _Rg,
class ... _Args> using std::ranges::__detail::_DeduceExpr1 = decltype
(_Cont<...auto...>(declval<_Rg>(), (declval<_Args>)()...))'
/src/gcc/testsuite/g++.dg/modules/xtreme-header-2_a.H: error: conflicting
global module declaration 'template<template<class ...> class _Cont, class _Rg,
class ... _Args> using std::ranges::__detail::_DeduceExpr2 = decltype
(_Cont<...auto...>(std::from_range, declval<_Rg>(), (declval<_Args>)()...))'
/src/gcc/testsuite/g++.dg/modules/xtreme-header-2_a.H: error: conflicting
global module declaration 'template<template<class ...> class _Cont, class _Rg,
class ... _Args> using std::ranges::__detail::_DeduceExpr3 = decltype
(_Cont<...auto...>(declval<std::ranges::__detail::_InputIter<_Rg> >(),
declval<std::ranges::__detail::_InputIter<_Rg> >(), (declval<_Args>)()...))'
/src/gcc/testsuite/g++.dg/modules/xtreme-header-2_a.H: error: conflicting
global module declaration 'using std::ranges::__detail::_DeduceExpr1 = decltype
(_Cont<...auto...>(declval<_Rg>(), (declval<_Args>)()...))'
/src/gcc/testsuite/g++.dg/modules/xtreme-header-2_a.H: error: conflicting
global module declaration 'using std::ranges::__detail::_DeduceExpr2 = decltype
(_Cont<...auto...>(std::from_range, declval<_Rg>(), (declval<_Args>)()...))'
/src/gcc/testsuite/g++.dg/modules/xtreme-header-2_a.H: error: conflicting
global module declaration 'using std::ranges::__detail::_DeduceExpr3 = decltype
(_Cont<...auto...>(declval<std::ranges::__detail::_InputIter<_Rg> >(),
declval<std::ranges::__detail::_InputIter<_Rg> >(), (declval<_Args>)()...))'

This appears to happen also for "aarch64":
https://gcc.gnu.org/pipermail/gcc-regression/2023-November/078616.html
and "Linux/x86_64":
https://gcc.gnu.org/pipermail/gcc-regression/2023-November/078617.html
suggesting that most targets are affected.

(Maintainers, please adjust your scripts to include a full gnu target tuple in
your autotester messages in those places where the abbreviated quoted ones are
found, so that readers can cut-and-paste that key information for e.g.
additional targets in bug-reports, QED.  Additional steps such as following
links should not be necessary.)

Reply via email to