-
Notifications
You must be signed in to change notification settings - Fork 49
Open
Description
Three places need to fix if want to compile with MSVC:
- complex types in MSVC-C is _Fcomplex and _Dcomplex, not conforming to C99 , should should replace
xxx _Complex
with following macro:
#ifndef HPTT_C_FLT_COMPLEX
#ifdef _MSC_VER
#define HPTT_C_FLT_COMPLEX _Fcomplex
#define HPTT_C_DBL_COMPLEX _Dcomplex
#else
#define HPTT_C_FLT_COMPLEX float _Complex
#define HPTT_C_DBL_COMPLEX double _Complex
#endif
#endif
- the
INLINE
macro should add specification with MSVC:__forceinline
#if defined(__ICC) || defined(__INTEL_COMPILER) || defined(_MSC_VER)
# define INLINE __forceinline
#elif .....
- MSVC does not support VLA, should use
_alloca
instead.
#ifdef _MSC_VER
#define HPTT_DECL_VLA(type_, name_, len_) type_* name_ = reinterpret_cast<type_*>(_alloca(sizeof(type_)*len_));
#else
#define HPTT_DECL_VLA(type_, name_, len_) type_ name_[len_];
#endif
Metadata
Metadata
Assignees
Labels
No labels