[Bug c++/86533] [9.0 regression] Compile error on valid code: error: no matching function for call to 'std::allocator::allocator(const _Tp_alloc_type&)' { return _Map_alloc_type(_M_get

2018-07-16 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86533

Jonathan Wakely  changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution|--- |INVALID

--- Comment #4 from Jonathan Wakely  ---
OK, thanks for confirming it.

[Bug c++/86533] [9.0 regression] Compile error on valid code: error: no matching function for call to 'std::allocator::allocator(const _Tp_alloc_type&)' { return _Map_alloc_type(_M_get

2018-07-16 Thread juergen.reuter at desy dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86533

--- Comment #3 from Jürgen Reuter  ---
(In reply to Jonathan Wakely from comment #2)
> My best guess is that you've messed up your GCC installation, because
> _GLIBCXX20_CONSTEXPR should be defined in  like so:
> 
> #ifndef _GLIBCXX20_CONSTEXPR
> # if __cplusplus > 201703L
> #  define _GLIBCXX20_CONSTEXPR constexpr
> # else
> #  define _GLIBCXX20_CONSTEXPR
> # endif
> #endif
> 
> If you have a headers using that macro then you should have the definition
> of that macro too.
> 
> Without preprocessed source there's no way to tell.

Yes, indeed you are correct, the gcc build was screwed up. Sometimes when you
do svn up on the gcc trunk, it compiles including bootstrap, but there was an
incompatible change which you recognize later. The safer way is to always do a
completely new build instead of just an update. Sorry for the false alarm.

[Bug c++/86533] [9.0 regression] Compile error on valid code: error: no matching function for call to 'std::allocator::allocator(const _Tp_alloc_type&)' { return _Map_alloc_type(_M_get

2018-07-16 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86533

--- Comment #2 from Jonathan Wakely  ---
My best guess is that you've messed up your GCC installation, because
_GLIBCXX20_CONSTEXPR should be defined in  like so:

#ifndef _GLIBCXX20_CONSTEXPR
# if __cplusplus > 201703L
#  define _GLIBCXX20_CONSTEXPR constexpr
# else
#  define _GLIBCXX20_CONSTEXPR
# endif
#endif

If you have a headers using that macro then you should have the definition of
that macro too.

Without preprocessed source there's no way to tell.

[Bug c++/86533] [9.0 regression] Compile error on valid code: error: no matching function for call to 'std::allocator::allocator(const _Tp_alloc_type&)' { return _Map_alloc_type(_M_get

2018-07-16 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86533

Jonathan Wakely  changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING
   Last reconfirmed||2018-07-16
 Ever confirmed|0   |1

--- Comment #1 from Jonathan Wakely  ---
It compiles fine for me, please provide a proper testcase as described at
https://gcc.gnu.org/bugs i.e. preprocessed source NOT an archive with dozens of
files.