
seh (Structured Exception Handling) is available only for 64-bit.However, propagating exceptions through C code shouldn't be needed for Daemon.

It has good performance, but it is said to have a drawback that exceptions can't be propagated through code compiled with a different compiler (or C code?). It has the drawback of significant runtime cost. sjlj (setjmp/longjmp) is available for both 32- and 64-bit builds.However, it is unfortunately the default in the APT package manager.

In general there is no reason to use win32. Daemon must be built with the posix flavor, because code that uses std::thread does not compile with win32. You can get win32 or posix thread models. 64-bit Windows versions are capable of running 32-bit executables in a mode called WOW (Windows-on-Windows). Whether to compile for 32-bit ("i686" in package names) or 64-bit ("x86-64" or "x86_64") architecture.

