added __clang__ to detect clang for inlining