You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[SYCL] Add a static_assert/check that app and sycl use consistent C++ RT on win
SYCL library is designed such a way that STL objects must cross the sycl.dll
boundary, which is guaranteed to work safe on Windows only if the runtime
in the app using sycl.dll and in sycl.dll is the same and is dynamic.
It is not possible to implement safe approach for using sycl libraries
built/linked with static C++ RT as it would cause having multiple copies
of C++ objects (such as scheduler, etc), which are supposed to be
singletones.
This check reports a compile-time error when user tries to compile
the application using sycl.dll with /MT or /MTd switches implying
using static C++ runtime libcmt[d].lib.
sycl.dll is built with /MD and sycld.dll is built with /MDd.
Thus /MD and /MDd are allowed, and /MT /MTd switches are prohibited now.
0 commit comments