This is an archive of the discontinued LLVM Phabricator instance.

Handle function name conflicts in _LIBCPP_MSVCRT mode
ClosedPublic

Authored by abdulras on Feb 4 2015, 3:35 PM.

Details

Reviewers
mclow.lists
Summary

Visual Studio's SAL extension uses a macro for deallocate. This macro is used
pervasively, and gets included through various different ways. This conflicts
with the similarly named interfaces in libc++. Introduce a
undef header
similar to __undef_min_max to handle this. This fixes a number of errors due to
the macro replacing the function name.

Diff Detail

Repository
rL LLVM

Event Timeline

abdulras updated this revision to Diff 19358.Feb 4 2015, 3:35 PM
abdulras retitled this revision from to Handle function name conflicts in _LIBCPP_MSVCRT mode.
abdulras updated this object.
abdulras edited the test plan for this revision. (Show Details)
abdulras added a reviewer: mclow.lists.
abdulras set the repository for this revision to rL LLVM.
abdulras added subscribers: compnerd, Unknown Object (MLST).
mclow.lists accepted this revision.Feb 13 2015, 1:19 PM
mclow.lists edited edge metadata.

I'm not 100% happy with the naked #warning there; since that's not portable.
However, it's the same as in __undef_min_max, so, OK.

This revision is now accepted and ready to land.Feb 13 2015, 1:19 PM
compnerd closed this revision.Feb 13 2015, 2:17 PM

Committed in SVN r229162.