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

            Bug ID: 82178
           Summary: bootstrap fails on ppc64 for
                    --enable-symvers=gnu-versioned-namespace
           Product: gcc
           Version: 8.0
            Status: UNCONFIRMED
          Keywords: build
          Severity: normal
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: redi at gcc dot gnu.org
  Target Milestone: ---
            Target: powerpc*-*-linux*

Making all in include
make[4]: Entering directory
`/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include'
mkdir -p ./powerpc64le-unknown-linux-gnu/bits/stdc++.h.gch
/home/jwakely/build-v8/./gcc/xgcc -shared-libgcc -B/home/jwakely/build-v8/./gcc
-nostdinc++
-L/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/src
-L/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/src/.libs
-L/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-B/usr/local/powerpc64le-unknown-linux-gnu/bin/
-B/usr/local/powerpc64le-unknown-linux-gnu/lib/ -isystem
/usr/local/powerpc64le-unknown-linux-gnu/include -isystem
/usr/local/powerpc64le-unknown-linux-gnu/sys-include    -x c++-header
-nostdinc++ -g -O2 -D_GNU_SOURCE 
-I/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/powerpc64le-unknown-linux-gnu
-I/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include
-I/home/jwakely/src/gcc/libstdc++-v3/libsupc++  -O2 -g -std=gnu++0x
/home/jwakely/src/gcc/libstdc++-v3/include/precompiled/stdc++.h \
-o powerpc64le-unknown-linux-gnu/bits/stdc++.h.gch/O2ggnu++0x.gch
In file included from
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.h:2651:0,
                 from
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/basic_ios.h:37,
                 from
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/ios:44,
                 from
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/istream:38,
                 from
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/sstream:38,
                 from
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/complex:45,
                 from
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/ccomplex:39,
                 from
/home/jwakely/src/gcc/libstdc++-v3/include/precompiled/stdc++.h:52:
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1310:11:
error: ‘num_put’ is not a template function
     const num_put<char>&
           ^~~~~~~
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1310:18:
error: expected ‘;’ before ‘<’ token
     const num_put<char>&
                  ^
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1314:11:
error: ‘num_get’ is not a template function
     const num_get<char>&
           ^~~~~~~
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1314:18:
error: expected ‘;’ before ‘<’ token
     const num_get<char>&
                  ^
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1327:15:
error: ‘num_put’ was not declared in this scope
     has_facet<num_put<char> >(const locale&);
               ^~~~~~~
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1327:15:
note: suggested alternative: ‘time_put’
     has_facet<num_put<char> >(const locale&);
               ^~~~~~~
               time_put
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1327:5:
error: parse error in template argument list
     has_facet<num_put<char> >(const locale&);
     ^~~~~~~~~~~~~~~~~~~~~~~
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1327:5:
error: template-id ‘has_facet<<expression error> >’ used as a declarator
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1327:5:
error: ‘std::__8::has_facet(const std::__8::locale&)’ is not a variable
template
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1327:29:
error: expected ‘;’ before ‘>’ token
     has_facet<num_put<char> >(const locale&);
                             ^
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1331:15:
error: ‘num_get’ was not declared in this scope
     has_facet<num_get<char> >(const locale&);
               ^~~~~~~
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1331:15:
note: suggested alternative: ‘time_get’
     has_facet<num_get<char> >(const locale&);
               ^~~~~~~
               time_get
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1331:5:
error: parse error in template argument list
     has_facet<num_get<char> >(const locale&);
     ^~~~~~~~~~~~~~~~~~~~~~~
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1331:5:
error: template-id ‘has_facet<<expression error> >’ used as a declarator
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1331:5:
error: ‘std::__8::has_facet(const std::__8::locale&)’ is not a variable
template
/home/jwakely/build-v8/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/locale_facets.tcc:1331:29:
error: expected ‘;’ before ‘>’ token
     has_facet<num_get<char> >(const locale&);
                             ^

(and lots more errors for money_get and money_put as well).

This fails as far back as gcc 4.8 (I didn't try earlier) so doesn't seem to be
a regression. I didn't check, but based on configure.ac it probably also fails
on 64-bit {sparc,s390,alpha}*-*-linux* targets too.

Rather than fixing it on trunk, I think we can just drop the ldbl compat
symbols for the versioned namespace build, since backwards compatibility is an
explicit non-goal of that configuration.

Reply via email to