35#ifndef _BLAZE_SYSTEM_COMPILER_H_
36#define _BLAZE_SYSTEM_COMPILER_H_
56#if defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || defined(__ECC)
57# define BLAZE_INTEL_COMPILER 1
59# define BLAZE_INTEL_COMPILER 0
75#if defined(__clang__) && !BLAZE_INTEL_COMPILER
76# define BLAZE_CLANG_COMPILER 1
78# define BLAZE_CLANG_COMPILER 0
86#define BLAZE_CLANG_MAJOR_VERSION __clang_major__
93#define BLAZE_CLANG_MINOR_VERSION __clang_minor__
100#define BLAZE_CLANG_PATCH_VERSION __clang_patchlevel__
115#if defined(__GNUC__) && !BLAZE_CLANG_COMPILER && !BLAZE_INTEL_COMPILER
116# define BLAZE_GNU_COMPILER 1
118# define BLAZE_GNU_COMPILER 0
126#define BLAZE_GNU_MAJOR_VERSION __GNUC__
133#define BLAZE_GNU_MINOR_VERSION __GNUC_MINOR__
148#if defined(_MSC_VER) && !BLAZE_CLANG_COMPILER && !BLAZE_INTEL_COMPILER
149# define BLAZE_MSC_COMPILER 1
151# define BLAZE_MSC_COMPILER 0
169BLAZE_STATIC_ASSERT( !BLAZE_GNU_COMPILER || ( !BLAZE_CLANG_COMPILER && !BLAZE_MSC_COMPILER && !BLAZE_INTEL_COMPILER ) );
170BLAZE_STATIC_ASSERT( !BLAZE_CLANG_COMPILER || ( !BLAZE_GNU_COMPILER && !BLAZE_MSC_COMPILER && !BLAZE_INTEL_COMPILER ) );
171BLAZE_STATIC_ASSERT( !BLAZE_MSC_COMPILER || ( !BLAZE_GNU_COMPILER && !BLAZE_CLANG_COMPILER && !BLAZE_INTEL_COMPILER ) );
172BLAZE_STATIC_ASSERT( !BLAZE_INTEL_COMPILER || ( !BLAZE_GNU_COMPILER && !BLAZE_CLANG_COMPILER && !BLAZE_MSC_COMPILER ) );
#define BLAZE_STATIC_ASSERT(expr)
Compile time assertion macro.
Definition: StaticAssert.h:112