This is an archive of the discontinued LLVM Phabricator instance.

Warn about dllexported explicit class template instantiation declarations (PR22035)
ClosedPublic

Authored by hans on Jan 14 2015, 4:53 PM.

Details

Summary

Clang would previously become confused and crash here.

It does not make a lot of sense to export these, so warning seems appropriate.

MSVC will export some member functions for this kind of specializations, whereas MinGW ignores the dllexport-edness. The latter behaviour seems better.

Diff Detail

Repository
rL LLVM

Event Timeline

hans updated this revision to Diff 18196.Jan 14 2015, 4:53 PM
hans retitled this revision from to Warn about dllexported explicit class template instantiation declarations (PR22035).
hans updated this object.
hans edited the test plan for this revision. (Show Details)
hans added reviewers: majnemer, rnk.
hans added subscribers: Unknown Object (MLST), hansw.
rnk edited edge metadata.Jan 14 2015, 5:03 PM

David really wanted this to be an error, but personally I think it should be a warning. Have you encountered this warning in Chrome?

majnemer accepted this revision.Jan 14 2015, 5:13 PM
majnemer edited edge metadata.

LGTM.

This revision is now accepted and ready to land.Jan 14 2015, 5:13 PM
hans added a comment.Jan 14 2015, 5:16 PM

David really wanted this to be an error, but personally I think it should be a warning. Have you encountered this warning in Chrome?

No, we don't hit this in Chromium.

This revision was automatically updated to reflect the committed changes.