35# define LIKELY [[ likely ]]
36# define UNLIKELY [[ unlikely ]]
44# define MAYBE_UNUSED [[ maybe_unused ]]
51# define MAKE_UNIQUE(type) std::make_unique<type>()
52# define MAKE_UNIQUE_ARGS(type, ...) std::make_unique<type>(__VA_ARGS__)
54# define MAKE_UNIQUE(type) std::unique_ptr<type>(new type())
55# define MAKE_UNIQUE_ARGS(type, ...) std::unique_ptr<type>(new type(__VA_ARGS__))
59# error "This is not a C++11 compiler"