This is an archive of the discontinued LLVM Phabricator instance.

Unconditionally enable lvalue function designators; NFC
ClosedPublic

Authored by aaron.ballman on Jan 17 2020, 12:40 PM.

Details

Summary

We previously had to guard against older MSVC and GCC versions which had rvalue references but not support for marking functions with ref qualifiers. However, having bumped our minimum required version to MSVC 2017 and GCC 5.1 mean we can unconditionally enable this feature. Rather than keeping the macro around, this replaces use of the macro with the actual ref qualifier.

I tested with my copy of MSVC 2017, but I am not on the base release of 2017, so additional testing would be appreciated to verify the patch.

Diff Detail

Event Timeline

aaron.ballman created this revision.Jan 17 2020, 12:40 PM
Herald added a project: Restricted Project. · View Herald TranscriptJan 17 2020, 12:40 PM
Herald added a subscriber: dexonsmith. · View Herald Transcript
thakis accepted this revision.Jan 17 2020, 12:48 PM
thakis added a subscriber: thakis.

Realistically, the the only way to find out if this works is to land and see.

This revision is now accepted and ready to land.Jan 17 2020, 12:48 PM
aaron.ballman closed this revision.Jan 22 2020, 7:06 AM

I've commit in 968561bcdc34c7d74482fe3bb69a045abf08d2c1 (clang) and 968561bcdc34c7d74482fe3bb69a045abf08d2c1 (llvm) and will keep an eye on the bots to revert if needed. Thanks!