1# /* **************************************************************************
2# * *
3# * (C) Copyright Paul Mensonides 2002.
4# * Distributed under the Boost Software License, Version 1.0. (See
5# * accompanying file LICENSE_1_0.txt or copy at
6# * http://www.boost.org/LICENSE_1_0.txt)
7# * *
8# ************************************************************************** */
9#
10# /* See http://www.boost.org for most recent version. */
11#
12# ifndef SIMDPP_PREPROCESSOR_DEBUG_ERROR_HPP
13# define SIMDPP_PREPROCESSOR_DEBUG_ERROR_HPP
14#
15# include <simdpp/detail/preprocessor/cat.hpp>
16# include <simdpp/detail/preprocessor/config/config.hpp>
17#
18# /* SIMDPP_PP_ERROR */
19#
20# if SIMDPP_PP_CONFIG_ERRORS
21# define SIMDPP_PP_ERROR(code) SIMDPP_PP_CAT(SIMDPP_PP_ERROR_, code)
22# endif
23#
24# define SIMDPP_PP_ERROR_0x0000 SIMDPP_PP_ERROR(0x0000, SIMDPP_PP_INDEX_OUT_OF_BOUNDS)
25# define SIMDPP_PP_ERROR_0x0001 SIMDPP_PP_ERROR(0x0001, SIMDPP_PP_WHILE_OVERFLOW)
26# define SIMDPP_PP_ERROR_0x0002 SIMDPP_PP_ERROR(0x0002, SIMDPP_PP_FOR_OVERFLOW)
27# define SIMDPP_PP_ERROR_0x0003 SIMDPP_PP_ERROR(0x0003, SIMDPP_PP_REPEAT_OVERFLOW)
28# define SIMDPP_PP_ERROR_0x0004 SIMDPP_PP_ERROR(0x0004, SIMDPP_PP_LIST_FOLD_OVERFLOW)
29# define SIMDPP_PP_ERROR_0x0005 SIMDPP_PP_ERROR(0x0005, SIMDPP_PP_SEQ_FOLD_OVERFLOW)
30# define SIMDPP_PP_ERROR_0x0006 SIMDPP_PP_ERROR(0x0006, SIMDPP_PP_ARITHMETIC_OVERFLOW)
31# define SIMDPP_PP_ERROR_0x0007 SIMDPP_PP_ERROR(0x0007, SIMDPP_PP_DIVISION_BY_ZERO)
32#
33# endif
34