This is an archive of the discontinued LLVM Phabricator instance.

[modules] Mark deleted functions as implicitly inline to allow merging
ClosedPublic

Authored by EricWF on Oct 31 2016, 4:36 AM.

Details

Summary

When merging definitions with ModulesLocalVisibility enabled it's important to make deleted definitions implicitly inline, otherwise they'll be diagnosed as a redefinition.

Diff Detail

Repository
rL LLVM

Event Timeline

EricWF updated this revision to Diff 76382.Oct 31 2016, 4:36 AM
EricWF updated this revision to Diff 76384.
EricWF retitled this revision from to [modules] Mark deleted functions as implicitly inline to allow merging.
EricWF updated this object.
EricWF added reviewers: rsmith, silvas, manmanren.
EricWF added a subscriber: cfe-commits.

Add test case.

rsmith accepted this revision.Oct 31 2016, 10:49 AM
rsmith edited edge metadata.
rsmith added inline comments.
lib/Sema/SemaDeclCXX.cpp
13875–13876 ↗(On Diff #76384)

This comment is effectively saying "Modules relies on the AST being correct". I don't think we need it.

This revision is now accepted and ready to land.Oct 31 2016, 10:49 AM
EricWF updated this revision to Diff 76501.Oct 31 2016, 4:15 PM
EricWF edited edge metadata.
This revision was automatically updated to reflect the committed changes.
EricWF closed this revision.Oct 31 2016, 4:16 PM