This is an archive of the discontinued LLVM Phabricator instance.

[MSVC2012] Allow 'mutable' references (fix for http://llvm.org/PR22444)
ClosedPublic

Authored by ABataev on Feb 3 2015, 2:31 AM.

Details

Summary

Some standard header files from MSVC2012 use 'mutable' on references, though it is directly prohibited by the standard.

Diff Detail

Repository
rL LLVM

Event Timeline

ABataev updated this revision to Diff 19214.Feb 3 2015, 2:31 AM
ABataev retitled this revision from to [MSVC2012] Allow 'mutable' references (fix for http://llvm.org/PR22444).
ABataev updated this object.
ABataev edited the test plan for this revision. (Show Details)
ABataev added a reviewer: rsmith.
ABataev added a subscriber: Unknown Object (MLST).
rsmith edited edge metadata.Feb 3 2015, 9:25 AM

Please emit a warning when this extension is used. If we're only doing this
to support a system header, you could even make it a DefaultError ExtWarn.
Other than that, this looks fine.

thakis added a subscriber: thakis.Feb 3 2015, 9:42 AM

Out of interest, which header file? We are able to parse all of Chromium
with MSVC2012 a while ago, and that uses lots of Windows headers.

This revision was automatically updated to reflect the committed changes.
rnk added a subscriber: rnk.Feb 4 2015, 12:46 PM

Out of interest, which header file? We are able to parse all of Chromium
with MSVC2012 a while ago, and that uses lots of Windows headers.

Chromium doesn't use C++11 library features like <future>, which tend to pull in other ConCRT headers that we aren't testing yet.