Modify

Ticket #2935 (closed Bugs: fixed)

Opened 5 years ago

Last modified 5 years ago

_MSC_FULL_VER has only 8 digits on some recent version of MSVC

Reported by: Onverra <onverra@…> Owned by: johnmaddock
Milestone: Boost 1.39.0 Component: type_traits
Version: Boost 1.38.0 Severity: Regression
Keywords: Cc: onverra@…

Description

Some recent version of Microsoft Visual C++ Compiler still has only 8 digits for _MSC_FULL_VER. In this case, intrinsics compiler are not activated and some traits (like is_pod) are broken.

To fix it, I suggest to introduce the macro BOOST_MSVC_FULL. Its value is normalized. The code is inspired from  http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?BoostConfig (search for _MSC_FULL_VER)

The patch include change for all librairies, but I tested it only on type_traits library. If such patch is not possible, I would suggest to, at least, fix the way intrinsics are activated on Visual C++.

Thanks

Attachments

BOOST_MSVC_FULL.patch Download (13.3 KB) - added by Onverra <onverra@…> 5 years ago.
Proposal for a fix

Change History

Changed 5 years ago by Onverra <onverra@…>

Proposal for a fix

comment:1 Changed 5 years ago by Onverra <onverra@…>

  • Cc onverra@… added

comment:2 Changed 5 years ago by johnmaddock

  • Status changed from new to closed
  • Resolution set to fixed

(In [55429]) Fixes #2935. Add new config macro BOOST_MSVC_FULL_VER, and updated type_traits to make use of it.

View

Add a comment

Modify Ticket

Change Properties
<Author field>
Action
as closed
The resolution will be deleted. Next status will be 'reopened'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.