32 lines
1.0 KiB
C
32 lines
1.0 KiB
C
/**
|
|
* @file Utils.h
|
|
* @ingroup SQLiteCpp
|
|
* @brief Definition of the SQLITECPP_PURE_FUNC macro.
|
|
*
|
|
* Copyright (c) 2012-2023 Sebastien Rombauts (sebastien.rombauts@gmail.com)
|
|
*
|
|
* Distributed under the MIT License (MIT) (See accompanying file LICENSE.txt
|
|
* or copy at http://opensource.org/licenses/MIT)
|
|
*/
|
|
#pragma once
|
|
|
|
// macro taken from https://github.com/nemequ/hedley/blob/master/hedley.h that was in public domain at this time
|
|
#if defined(__GNUC__) || defined(__GNUG__) || defined(__clang__) ||\
|
|
(defined(__INTEL_COMPILER) && __INTEL_COMPILER > 1600) ||\
|
|
(defined(__ARMCC_VERSION) && __ARMCC_VERSION > 4010000) ||\
|
|
(\
|
|
defined(__TI_COMPILER_VERSION__) && (\
|
|
__TI_COMPILER_VERSION__ > 8003000 ||\
|
|
(__TI_COMPILER_VERSION__ > 7003000 && defined(__TI_GNU_ATTRIBUTE_SUPPORT__))\
|
|
)\
|
|
)
|
|
#if defined(__has_attribute)
|
|
#if !defined(SQLITECPP_PURE_FUNC) && __has_attribute(pure)
|
|
#define SQLITECPP_PURE_FUNC __attribute__((pure))
|
|
#endif
|
|
#endif
|
|
#endif
|
|
#if !defined(SQLITECPP_PURE_FUNC)
|
|
#define SQLITECPP_PURE_FUNC
|
|
#endif
|