Constrain make_zoned for icc16

Build fails with Intel Compiler v16:

<source>(1698): error: expression must have a constant value
  std::is_class<typename std::decay<decltype(*std::declval<TimeZonePtr&>())>::type>{}
                                                                                    ^
This commit is contained in:
Nehal J Wani 2019-11-27 14:12:55 -05:00 committed by Howard Hinnant
parent 940f4a5ceb
commit 4c95165298

View File

@ -1684,6 +1684,7 @@ make_zoned(const sys_time<Duration>& tp)
template <class TimeZonePtr
#if !defined(_MSC_VER) || (_MSC_VER > 1916)
#if !defined(__INTEL_COMPILER) || (__INTEL_COMPILER > 1600)
, class = typename std::enable_if
<
std::is_class
@ -1694,6 +1695,7 @@ template <class TimeZonePtr
>::type
>{}
>::type
#endif
#endif
>
inline
@ -1712,10 +1714,12 @@ make_zoned(const std::string& name)
template <class Duration, class TimeZonePtr
#if !defined(_MSC_VER) || (_MSC_VER > 1916)
#if !defined(__INTEL_COMPILER) || (__INTEL_COMPILER > 1600)
, class = typename std::enable_if
<
std::is_class<typename std::decay<decltype(*std::declval<TimeZonePtr&>())>::type>{}
>::type
#endif
#endif
>
inline
@ -1728,10 +1732,12 @@ make_zoned(TimeZonePtr zone, const local_time<Duration>& tp)
template <class Duration, class TimeZonePtr
#if !defined(_MSC_VER) || (_MSC_VER > 1916)
#if !defined(__INTEL_COMPILER) || (__INTEL_COMPILER > 1600)
, class = typename std::enable_if
<
std::is_class<typename std::decay<decltype(*std::declval<TimeZonePtr&>())>::type>{}
>::type
#endif
#endif
>
inline
@ -1794,10 +1800,12 @@ make_zoned(const std::string& name, const zoned_time<Duration, TimeZonePtr>& zt,
template <class Duration, class TimeZonePtr
#if !defined(_MSC_VER) || (_MSC_VER > 1916)
#if !defined(__INTEL_COMPILER) || (__INTEL_COMPILER > 1600)
, class = typename std::enable_if
<
std::is_class<typename std::decay<decltype(*std::declval<TimeZonePtr&>())>::type>{}
>::type
#endif
#endif
>
inline