#2078: thorn vectors fails if vectorization is disabled ------------------------------------+--------------------------------------- Reporter: rhaas | Owner: Type: defect | Status: new Priority: major | Milestone: Component: EinsteinToolkit thorn | Version: development version Resolution: | Keywords: Vectors ------------------------------------+---------------------------------------
Comment (by rhaas):
Ok, got a test case:
{{{ diff --git a/Vectors/src/vectors.cc b/Vectors/src/vectors.cc index a2725d3..ffbf9b2 100644 --- a/Vectors/src/vectors.cc +++ b/Vectors/src/vectors.cc @@ -7,5 +7,8 @@ extern "C" int Vectors_Startup(void) { CCTK_VInfo(CCTK_THORNSTRING, "Using vector size %d for architecture %s", CCTK_REAL_VEC_SIZE, vec_architecture); + + CCTK_REAL myscal = 42.; + vectype<CCTK_REAL> myvec(myscal); return 0; } }}} which fails with: {{{ n file included from /data/rhaas/postdoc/gr/cactus/ET_trunk/configs/sim/build/Vectors/vectors.cc:1:0: /data/rhaas/postdoc/gr/cactus/ET_trunk/arrangements/CactusUtils/Vectors/src/vectors.h: In instantiation of ‘class vectype<double>’: /data/rhaas/postdoc/gr/cactus/ET_trunk/configs/sim/build/Vectors/vectors.cc:12:34: required from here /data/rhaas/postdoc/gr/cactus/ET_trunk/arrangements/CactusUtils/Vectors/src/vectors.h:671:22: error: ‘constexpr vectype<T>::vectype(const scalar_t&) [with T = double; vectype<T>::scalar_t = double]’ cannot be overloaded explicit constexpr vectype(scalar_t const &a) : v(props::set1(a)) {} ^~~~~~~ /data/rhaas/postdoc/gr/cactus/ET_trunk/arrangements/CactusUtils/Vectors/src/vectors.h:670:13: error: with ‘constexpr vectype<T>::vectype(const vector_t&) [with T = double; vectype<T>::vector_t = double]’ constexpr vectype(vector_t const &x) : v(x) {} ^~~~~~~ }}} I attach a tarball of the modified Vectors thorn as well as config-info.