Opened 9 years ago

Last modified 8 years ago

#9266 closed Bugs

Synchronized_value crashes MSVC12 (VS2013) — at Version 2

Reported by: mjklaim@… Owned by: viboes
Milestone: To Be Determined Component: config
Version: Boost Development Trunk Severity: Problem
Keywords: Cc:

Description (last modified by viboes)

I got the crash using the following full code (using boost trunk r86347 ):

    #include<boost/thread/synchronized_value.hpp>
    
    boost::synchronized_value<int> foo;		

Which produce the following error (ignore the file name, it contains exactly the code above):

1>  clock.cpp
1>e:\projects\sdk\boost\boost\include\boost-1_55\boost\thread\synchronized_value.hpp(401): fatal error C1001: An internal error has occurred in the compiler.
1>  (compiler file 'f:\dd\vctools\compiler\cxxfe\sl\p1\c\types.c', line 12852)
1>   To work around this problem, try simplifying or changing the program near the locations listed above.
1>  Please choose the Technical Support command on the Visual C++ 
1>   Help menu, or open the Technical Support help file for more information
1>          e:\projects\games\netrush\netrush_projects\projects\netrush\system\core\clock.hpp(120) : see reference to class template instantiation 'boost::synchronized_value<int,boost::mutex>' being compiled
Build has been canceled.

Note that I reported another problem similar in MSVC12 RC: connect.microsoft.com/VisualStudio/feedback/details/802157/compiler-crash-mixing-boost-synchronized-value-and-boost-property-tree I'm not sure if it's related.

Change History (2)

comment:1 by mjklaim@…, 9 years ago

Removing the ifdefs in the synchronized_value related to BOOST_NO_CXX11_VARIADIC_TEMPLATES, and taking the code using variadic templates does fix the problem for me.

comment:2 by viboes, 9 years ago

Description: modified (diff)
Owner: changed from Anthony Williams to viboes
Status: newassigned
Note: See TracTickets for help on using tickets.