1/*
2Copyright Rene Rivera 2008-2014
3Distributed under the Boost Software License, Version 1.0.
4(See accompanying file LICENSE_1_0.txt or copy at
5http://www.boost.org/LICENSE_1_0.txt)
6*/
7
8#ifndef BOOST_PREDEF_COMPILER_INTEL_H
9#define BOOST_PREDEF_COMPILER_INTEL_H
10
11#include <boost/predef/version_number.h>
12#include <boost/predef/make.h>
13
14/*`
15[heading `BOOST_COMP_INTEL`]
16
17[@http://en.wikipedia.org/wiki/Intel_C%2B%2B Intel C/C++] compiler.
18Version number available as major, minor, and patch.
19
20[table
21 [[__predef_symbol__] [__predef_version__]]
22
23 [[`__INTEL_COMPILER`] [__predef_detection__]]
24 [[`__ICL`] [__predef_detection__]]
25 [[`__ICC`] [__predef_detection__]]
26 [[`__ECC`] [__predef_detection__]]
27
28 [[`__INTEL_COMPILER`] [V.R.P]]
29 ]
30 */
31
32#define BOOST_COMP_INTEL BOOST_VERSION_NUMBER_NOT_AVAILABLE
33
34#if defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || \
35 defined(__ECC)
36# if !defined(BOOST_COMP_INTEL_DETECTION) && defined(__INTEL_COMPILER)
37# define BOOST_COMP_INTEL_DETECTION BOOST_PREDEF_MAKE_10_VRP(__INTEL_COMPILER)
38# endif
39# if !defined(BOOST_COMP_INTEL_DETECTION)
40# define BOOST_COMP_INTEL_DETECTION BOOST_VERSION_NUMBER_AVAILABLE
41# endif
42#endif
43
44#ifdef BOOST_COMP_INTEL_DETECTION
45# if defined(BOOST_PREDEF_DETAIL_COMP_DETECTED)
46# define BOOST_COMP_INTEL_EMULATED BOOST_COMP_INTEL_DETECTION
47# else
48# undef BOOST_COMP_INTEL
49# define BOOST_COMP_INTEL BOOST_COMP_INTEL_DETECTION
50# endif
51# define BOOST_COMP_INTEL_AVAILABLE
52# include <boost/predef/detail/comp_detected.h>
53#endif
54
55#define BOOST_COMP_INTEL_NAME "Intel C/C++"
56
57#include <boost/predef/detail/test.h>
58BOOST_PREDEF_DECLARE_TEST(BOOST_COMP_INTEL,BOOST_COMP_INTEL_NAME)
59
60#ifdef BOOST_COMP_INTEL_EMULATED
61#include <boost/predef/detail/test.h>
62BOOST_PREDEF_DECLARE_TEST(BOOST_COMP_INTEL_EMULATED,BOOST_COMP_INTEL_NAME)
63#endif
64
65
66#endif
67