This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libstdc++/72792] allocator_traits is too strict about rebinding


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

--- Comment #6 from Liviu Ionescu <ilg at livius dot net> ---
> If you have real world code that is affected ...

I do, it is called µOS++, and it is a C++ RTOS with advanced memory management
features, using C++17 memory resources and C++11 standard allocators:

https://github.com/micro-os-plus/micro-os-plus-iii

It was developed on clang and GCC 5.x. When I tried GCC 6.x, it failed. Today I
took some time to understand why, and discovered the static assert in the
allocator_traits<> template.

I removed it and this solved the problem.

Now I'm working on a patch for GCC 6.x distributions, so I can run my tests on
CI servers until 6.4 will be released.

I'm a bit surprised that there were no other reports, according to my tests the
bug affected all custom allocators that use pointers to functions or pointer to
class members as template parameters. (I wrote a simple test, trying several
types of template parameters).

any estimate when the new release will be available?

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]