Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2024-11-15 09:02:30

0001 /*
0002 Copyright 2014-2016 Glen Joseph Fernandes
0003 (glenjofe@gmail.com)
0004 
0005 Distributed under the Boost Software License, Version 1.0.
0006 (http://www.boost.org/LICENSE_1_0.txt)
0007 */
0008 #ifndef BOOST_ALIGN_ALIGNMENT_OF_HPP
0009 #define BOOST_ALIGN_ALIGNMENT_OF_HPP
0010 
0011 #include <boost/align/detail/element_type.hpp>
0012 #include <boost/align/alignment_of_forward.hpp>
0013 
0014 #if defined(_MSC_VER) && defined(__clang__)
0015 #include <boost/align/detail/alignment_of_cxx11.hpp>
0016 #elif defined(BOOST_MSVC)
0017 #include <boost/align/detail/alignment_of_msvc.hpp>
0018 #elif defined(__GNUC__) && defined(__unix__) && !defined(__LP64__)
0019 #include <boost/align/detail/alignment_of.hpp>
0020 #elif defined(BOOST_CLANG) && !defined(__x86_64__)
0021 #include <boost/align/detail/alignment_of.hpp>
0022 #elif !defined(BOOST_NO_CXX11_HDR_TYPE_TRAITS)
0023 #include <boost/align/detail/alignment_of_cxx11.hpp>
0024 #elif defined(__ghs__) && (__GHS_VERSION_NUMBER >= 600)
0025 #include <boost/align/detail/alignment_of_gcc.hpp>
0026 #elif defined(BOOST_CODEGEARC)
0027 #include <boost/align/detail/alignment_of_codegear.hpp>
0028 #elif defined(BOOST_CLANG)
0029 #include <boost/align/detail/alignment_of_clang.hpp>
0030 #elif __GNUC__ > 4
0031 #include <boost/align/detail/alignment_of_gcc.hpp>
0032 #elif (__GNUC__ == 4) && (__GNUC_MINOR__ >= 3)
0033 #include <boost/align/detail/alignment_of_gcc.hpp>
0034 #else
0035 #include <boost/align/detail/alignment_of.hpp>
0036 #endif
0037 
0038 namespace boost {
0039 namespace alignment {
0040 
0041 template<class T>
0042 struct alignment_of
0043     : detail::alignment_of<typename
0044         detail::element_type<T>::type>::type { };
0045 
0046 #if !defined(BOOST_NO_CXX14_VARIABLE_TEMPLATES)
0047 template<class T>
0048 constexpr std::size_t alignment_of_v = alignment_of<T>::value;
0049 #endif
0050 
0051 } /* alignment */
0052 } /* boost */
0053 
0054 #endif