id summary reporter owner description type status milestone component version severity resolution keywords cc 11604 Boost.Context Assembler Error A1010 with Intel Compiler 16.0 (win7 64bit) Andre Netzeband olli "Hi I'm currently trying to compiler the boost library for Intel Compiler 16.0 together with msvc 2015. I compile the 64 bit libraries. Unfortunately I get some Assembler errors when compiling the boost.context module. On the command line the following command is performed: {{{ ml64 -nologo -c -Zp4 -Cp -Cx -DBOOST_ALL_NO_LIB=1 -DBOOST_CHRONO_DYN_LINK=1 -DBOOST_CONTEXT_DYN_LINK=1 -DBOOST_CONTEXT_SOURCE -DBOOST_DISABLE_ASSERTS -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_SYSTEM_NO_DEPRECATED -DBOOST_THREAD_BUILD_DLL=1 -DBOOST_THREAD_USE_DLL=1 -DNDEBUG -DBOOST_ALL_NO_LIB=1 -DBOOST_CHRONO_DYN_LINK=1 -DBOOST_CONTEXT_DYN_LINK=1 -DBOOST_CONTEXT_SOURCE -DBOOST_DISABLE_ASSERTS -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_SYSTEM_NO_DEPRECATED -DBOOST_THREAD_BUILD_DLL=1 -DBOOST_THREAD_USE_DLL=1 -DNDEBUG /W3 -Fo ""build-default\intel64\boost\bin.v2\libs\context\build\intel-vc14-win-16.0\release\address-model-64\threading-multi\asm\jump_x86_64_ms_pe_masm.obj"" ""libs\context\src\asm\jump_x86_64_ms_pe_masm.asm"" }}} I get the following error message (it seems that some parts of the error message are mixed, but this is the original tool output): {{{ Assembling: libs\context\src\asm\jump_x86_64_ms_pe_masm.asm libs\context\src\asm\jump_x86_64_ms_pe_masm.asm(80)ge for specified size libs\context\src\asm\jump_x86_64_ms_pe_masm.asm(80) : error A2libs\context\src\asm\jump_x86_64_ms_pe_masm.asm(81)ge for specified size libs\context\src\asm\jump_x86_64_ms_pe_masm.asm(81) : warning A4020:directive ignolibs\context\src\asm\jump_x86_64_ms_pe_masm.asm(215)rge for specified size libs\context\src\asm\jump_x86_64_ms_pe_masm.asm(215) : fatal error A1010:unmatche_x8? }}} When I compile only with msvc 2015 toolset, everything is fine. Thus I printed out the corresponding command for msvc 2015 only and I see one difference: For the Visual C++ compiler the bjam is giving the definition BOOST_CONTEXT_EXPORT=EXPORT to the assembler. When I add this definition also to the intel compiler command, it compiles without errors: {{{ ml64 -nologo -c -Zp4 -Cp -Cx -DBOOST_CONTEXT_EXPORT=EXPORT -DBOOST_ALL_NO_LIB=1 -DBOOST_CHRONO_DYN_LINK=1 -DBOOST_CONTEXT_DYN_LINK=1 -DBOOST_CONTEXT_SOURCE -DBOOST_DISABLE_ASSERTS -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_SYSTEM_NO_DEPRECATED -DBOOST_THREAD_BUILD_DLL=1 -DBOOST_THREAD_USE_DLL=1 -DNDEBUG -DBOOST_ALL_NO_LIB=1 -DBOOST_CHRONO_DYN_LINK=1 -DBOOST_CONTEXT_DYN_LINK=1 -DBOOST_CONTEXT_SOURCE -DBOOST_DISABLE_ASSERTS -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_SYSTEM_NO_DEPRECATED -DBOOST_THREAD_BUILD_DLL=1 -DBOOST_THREAD_USE_DLL=1 -DNDEBUG /W3 -Fo ""build-default\intel 64\boost\bin.v2\libs\context\build\intel-vc14-win-16.0\release\address-model-64\threading-multi\asm\jump_x86_64_ms_pe_masm.obj"" ""libs\context\src\asm\jump_x86_64_ms_pe_masm.asm"" Assembling: libs\context\src\asm\jump_x86_64_ms_pe_masm.asm }}} However I cannot find any description what the definition BOOST_CONTEXT_EXPORT=EXPORT means. Anyway I was able to fix the issue by adding the lines {{{ intel,shared:BOOST_CONTEXT_EXPORT=EXPORT intel,static:BOOST_CONTEXT_EXPORT= }}} to the file boost\libs\context\build\Jamfile.v2 (after line 32 for msvc)" Support Requests closed To Be Determined context Boost 1.59.0 Problem fixed boost_context_export intel assembler a1010