1/*
2Copyright Rene Rivera 2008-2015
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_COMEAU_H
9#define BOOST_PREDEF_COMPILER_COMEAU_H
10
11#include <boost/predef/version_number.h>
12#include <boost/predef/make.h>
13
14#define BOOST_COMP_COMO BOOST_VERSION_NUMBER_NOT_AVAILABLE
15
16/* tag::reference[]
17= `BOOST_COMP_COMO`
18
19http://en.wikipedia.org/wiki/Comeau_C/C%2B%2B[Comeau {CPP}] compiler.
20Version number available as major, minor, and patch.
21
22[options="header"]
23|===
24| {predef_symbol} | {predef_version}
25
26| `+__COMO__+` | {predef_detection}
27
28| `+__COMO_VERSION__+` | V.R.P
29|===
30*/ // end::reference[]
31
32#if defined(__COMO__)
33# if !defined(BOOST_COMP_COMO_DETECTION) && defined(__COMO_VERSION__)
34# define BOOST_COMP_COMO_DETECTION BOOST_PREDEF_MAKE_0X_VRP(__COMO_VERSION__)
35# endif
36# if !defined(BOOST_COMP_COMO_DETECTION)
37# define BOOST_COMP_COMO_DETECTION BOOST_VERSION_NUMBER_AVAILABLE
38# endif
39#endif
40
41#ifdef BOOST_COMP_COMO_DETECTION
42# if defined(BOOST_PREDEF_DETAIL_COMP_DETECTED)
43# define BOOST_COMP_COMO_EMULATED BOOST_COMP_COMO_DETECTION
44# else
45# undef BOOST_COMP_COMO
46# define BOOST_COMP_COMO BOOST_COMP_COMO_DETECTION
47# endif
48# define BOOST_COMP_COMO_AVAILABLE
49# include <boost/predef/detail/comp_detected.h>
50#endif
51
52#define BOOST_COMP_COMO_NAME "Comeau C++"
53
54#endif
55
56#include <boost/predef/detail/test.h>
57BOOST_PREDEF_DECLARE_TEST(BOOST_COMP_COMO,BOOST_COMP_COMO_NAME)
58
59#ifdef BOOST_COMP_COMO_EMULATED
60#include <boost/predef/detail/test.h>
61BOOST_PREDEF_DECLARE_TEST(BOOST_COMP_COMO_EMULATED,BOOST_COMP_COMO_NAME)
62#endif
63

source code of include/boost/predef/compiler/comeau.h