<div dir="ltr"><div>I upgraded my install of VS2015 to VS2015 Update 3 and it appears to have broken the ability of an in-house tool that is based on Clang to parse type_traits.  It appears that is_assignable is now implemented in terms of an intrinsic named __is_assignable.  Is there a work around or a fix for this?</div><div><br></div><div>From Microsoft's implementation of type_traits:</div><div><br></div><div> // TEMPLATE CLASS is_assignable<br>template<class _To,<br> class _From><br> struct is_assignable<br>  : integral_constant<bool, __is_assignable(_To, _From)><br> { // determine whether _From can be assigned to _To<br> };<br></div><div><br></div><div>When I parse a file that include type_traits indirectly I get the following errors:</div><div><br></div><div>C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\type_traits(524,45): error : '_To' does not refer to a value<br>                  : integral_constant<bool, __is_assignable(_To, _From)><br>                                                            ^<br>  C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\type_traits(521,16) :  note: declared here<br>  template<class _To,<br>                 ^<br>C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\type_traits(524,50): error : '_From' does not refer to a value<br>                  : integral_constant<bool, __is_assignable(_To, _From)><br>                                                                 ^<br>  C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\type_traits(522,8) :  note: declared here<br>          class _From><br>                ^<br>C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\type_traits(525,2): error : expected class name<br>          {       // determine whether _From can be assigned to _To<br>          ^<br>  3 errors generated.</div></div>