Opened 9 years ago

Closed 8 years ago

#2935 closed Bugs (fixed)

_MSC_FULL_VER has only 8 digits on some recent version of MSVC

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


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 (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++.


Attachments (1)

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

Download all attachments as: .zip

Change History (3)

Changed 9 years ago by Onverra <onverra@…>

Attachment: BOOST_MSVC_FULL.patch added

Proposal for a fix

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

Cc: onverra@… added

comment:2 Changed 8 years ago by John Maddock

Resolution: fixed
Status: newclosed

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

Modify Ticket

Change Properties
Set your email in Preferences
as closed The owner will remain John Maddock.
The resolution will be deleted.

Add Comment

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

Note: See TracTickets for help on using tickets.