From coin-trac at coin-or.org Mon Aug 30 02:36:42 2010 From: coin-trac at coin-or.org (Generic task-parallel library for C/C++) Date: Mon, 30 Aug 2010 06:36:42 -0000 Subject: [PFunc-tickets] [Generic task-parallel library for C/C++] #1: Does not compile under Windows with Visual Studio 2008 Message-ID: <052.3ff5045f68b3ee5d4e8985a22982a10e@coin-or.org> #1: Does not compile under Windows with Visual Studio 2008 ------------------------+--------------------------------------------------- Reporter: kalmar | Owner: somebody Type: defect | Status: new Priority: major | Milestone: Component: component1 | Version: 1.0 Keywords: | ------------------------+--------------------------------------------------- It is not possible to compile a program that includes the PFunc header under Windows with VisualStudio. There are several errors: First: in windows.h: it is necessary to include Windows.h to get the definition of MemoryBarrier() Second: in windows.h: the static_casts do not work, because of the volatile modifier of the input parameter. Possible solution: cast to volatile ptr type ? Third: in windows.h: ASM related problem: Output of the compiler is: pfunc/asm/windows.h(52) : error C2443: operand size conflict where line 52 is __asm lock cmpxchg [dest], dx Fourth: in windows.h: InterlockedAdd is not defined. Fifth: in exception.hpp: It is necessary to include Windows.h to get the definition of DWORD I would be happy if you could tell me if these are real bugs or if my compiler is incorrect. And if these are real bugs, how one could fix these. Best regards, Christian Wolf -- Ticket URL: Generic task-parallel library for C/C++ Generic task-parallel library for C/C++