From 931f1e377ad27af2801c1e68946010e980810539 Mon Sep 17 00:00:00 2001 From: Rainer Orth Date: Tue, 26 Oct 2021 14:07:57 +0200 Subject: [PATCH] libstdc++: Fix 28_regex/basic_regex/84110.cc on Solaris MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 28_regex/basic_regex/84110.cc currently FAILs on Solaris: FAIL: 28_regex/basic_regex/84110.cc (test for excess errors) UNRESOLVED: 28_regex/basic_regex/84110.cc compilation failed to produce executable Excess errors: /vol/gcc/src/hg/master/local/libstdc++-v3/testsuite/28_regex/basic_regex/84110.cc:14: error: reference to 'extended' is ambiguous The issue is seen in the full output: /vol/gcc/src/hg/master/local/libstdc++-v3/testsuite/28_regex/basic_regex/84110.cc: In function ‘void test01()’: /vol/gcc/src/hg/master/local/libstdc++-v3/testsuite/28_regex/basic_regex/84110.cc:14: error: reference to ‘extended’ is ambiguous In file included from /var/gcc/regression/master/11.4-gcc-gas/build/gcc/include-fixed/math.h:391, from /var/gcc/regression/master/11.4-gcc-gas/build/i386-pc-solaris2.11/libstdc++-v3/include/cmath:45, from /vol/gcc/src/hg/master/local/libstdc++-v3/include/precompiled/stdc++.h:41: /usr/include/floatingpoint.h:73: note: candidates are: ‘typedef unsigned int extended [3]’ Fixed by disambiguating extended. Tested on i386-pc-solaris2.11, sparc-sun-solaris2.11, and x86_64-pc-linux-gnu. 2021-10-20 Rainer Orth libstdc++-v3: * testsuite/28_regex/basic_regex/84110.cc (test01) [__cpp_exceptions]: Disambiguate extended. --- libstdc++-v3/testsuite/28_regex/basic_regex/84110.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libstdc++-v3/testsuite/28_regex/basic_regex/84110.cc b/libstdc++-v3/testsuite/28_regex/basic_regex/84110.cc index b9971dc..16f928b 100644 --- a/libstdc++-v3/testsuite/28_regex/basic_regex/84110.cc +++ b/libstdc++-v3/testsuite/28_regex/basic_regex/84110.cc @@ -11,6 +11,9 @@ void test01() #if __cpp_exceptions using namespace std::regex_constants; + // See https://gcc.gnu.org/pipermail/gcc-patches/2021-October/582486.html + using std::regex_constants::extended; + for (auto syn : {basic, extended, awk, grep, egrep}) { try -- 2.7.4