Lumiera
0.pre.03
»edit your freedom«
|
#include "lib/meta/trait.hpp"
temporary workaround for GCC [Bug-63723], necessary until CGG-5
is_convertible
trait uses initialisation from a brace enclosed list, where C++11 prohibits narrowing conversions. Now the problem is, that we'll use such traits checks to remove such impossble cases from generated trampoline tables or visitor double dispatch implementations. Thus, for one we get lots of warnings at that point when generating those trampoline tables (at initialisation), while it is not clear we'll trigger those cases, and, when we do, we'll get narrowing conversions in a context where we're unable to cope with them or protect ourselves against spurious conversions. What follows is a quick-n-dirty hack to remove such unwanted conversions.