Build fix: missing type traits on gcc < 5.0
authorJérémie Galarneau <jeremie.galarneau@efficios.com>
Fri, 8 Apr 2022 19:09:16 +0000 (15:09 -0400)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Fri, 8 Apr 2022 19:09:16 +0000 (15:09 -0400)
commitf12e33ba4926d519a81baa388384fc54afde3985
treee12f5fd0d3d17248afac0ceb0f1db5791d431d84
parentc56f67e5d0844c92823c7c9aa1a1222cf6daf22a
Build fix: missing type traits on gcc < 5.0

gcc versions before 5.0 lack some type traits defined in C++11. Since in
this instance we use the trait to prevent misuses of certain functions
to statically assert at build time and not to generate different code
based on this property, it is preferable to simply set value to true and
allow the code to compile. Anyone using a contemporary compiler will
catch the error.

I have not replaced the type trait checks with macros using gcc-specific
checks (__has_trivial_copy(), for example) since their semantics diverge
subtly from the standard and their use could introduce bugs.

Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Change-Id: Id57cc1cff67847c725f75eb3404443732de1c531
src/common/macros.hpp
This page took 0.024395 seconds and 4 git commands to generate.