This is an archive of the discontinued LLVM Phabricator instance.

Add 3 more missing inline/visibility attributes
ClosedPublic

Authored by eugenis on Dec 9 2015, 2:02 PM.

Details

Summary

These are the cases when an out-of-class definition of a method is marked _LIBCPP_INLINE_VISIBILITY, but the in-class declaration is not. This will start failing when (or if) we switch to attribute((internal_linkage)).

Diff Detail

Repository
rL LLVM

Event Timeline

eugenis updated this revision to Diff 42335.Dec 9 2015, 2:02 PM
eugenis retitled this revision from to Add 3 more missing inline/visibility attributes.
eugenis updated this object.
eugenis added reviewers: EricWF, mclow.lists.
eugenis set the repository for this revision to rL LLVM.
eugenis added a subscriber: cfe-commits.
EricWF accepted this revision.Dec 9 2015, 2:31 PM
EricWF edited edge metadata.

LGTM. For clang this patch should have no functionality change because clang allows attributes to appear only in the declaration. GCC however was previously ignoring the attributes and only now will it mark those functions as hidden. I don't think this will be an issue though. Do you agree?

This revision is now accepted and ready to land.Dec 9 2015, 2:31 PM

Should be fine.

eugenis closed this revision.Dec 9 2015, 2:35 PM

r255166