This is an archive of the discontinued LLVM Phabricator instance.

Enhance treatment of function specializations in friend declarations
Needs ReviewPublic

Authored by sepavloff on Aug 1 2016, 7:47 AM.
This revision needs review, but there are no reviewers specified.

Details

Reviewers
None
Summary

Function specializations used in friend declarations in class templates, like:

template<typename T> class C1 {
    friend void func<>(int);

previously were processed incorrectly: class instantiation made them ordinary
functions and they were not placed into redeclaration chains correctly. This
change repairs specialization treatment.

This change fixes PR12994.

Diff Detail

Event Timeline

sepavloff updated this revision to Diff 66321.Aug 1 2016, 7:47 AM
sepavloff retitled this revision from to Enhance treatment of function specializations in friend declarations.
sepavloff updated this object.
sepavloff added a subscriber: cfe-commits.