This module contains features to query properties of the compiler or of the
standard library implementation. It is mainly used by the test files to check
whether compiler-specific optimizations work.
This variable template is specialized for some specific templates and
will always contain false for the other ones. It will contain
true for the specialized template if and only if the implementation
optimizes these templates so that they can benefit from the empty base
class optimization.
It is specialized for the following standard library templates:
std::unique_ptr
std::tuple
// Example usageif(compiler::has_ebco_for<std::unique_ptr>){assert(sizeof(std::unique_ptr<int>)<sizeof(std::unique_ptr<int,int(*)(int*)>));}