forked from boostorg/smart_ptr
nvcc seems to use the host compiler for preprocessing the source for the device and host compilation. When compiling the host code with the host compiler (clang), `__builtin_assume` is detected correctly and is also available during compilation. When compiling the device code with nvcc, this builtin function is not available.