Opened 8 years ago

#10118 new Bugs

boost::interprocess windows_intermodule_singleton crashes when mixing compilers

Reported by: emil.styrke@… Owned by: Ion Gaztañaga
Milestone: To Be Determined Component: interprocess
Version: Boost 1.55.0 Severity: Problem
Keywords: Cc:

Description

windows_semaphore_based_map uses an std::map to communicate between modules. However, the ABI of std::map is different between (for example) VS2008 and VS2012, which means that if a DLL compiled with VS2012 is linked with an application compiled with VS2008, the second module to use the intermodule singleton will crash.

This is essentially the same problem as #9262, but with different compiler versions instead of different build types.

A simple workaround is to comment out

#define BOOST_INTERPROCESS_HAS_KERNEL_BOOTTIME

in interprocess/detail/workaround.hpp.

Change History (0)

Note: See TracTickets for help on using tickets.