This is an archive of the discontinued LLVM Phabricator instance.

[clang] Include the type of a pointer or reference non-type template parameter in its notion of template argument identity.
ClosedPublic

Authored by mizvekov on Oct 26 2022, 5:14 PM.

Details

Summary

We already did this for all the other kinds of non-type template
argument. We're still missing the type from the mangling, so we continue
to be able to see collisions at link time; that's an open ABI issue.

Note: Based on earlier reverted patch from zygoloid.

Diff Detail

Event Timeline

mizvekov created this revision.Oct 26 2022, 5:14 PM
Herald added a project: Restricted Project. · View Herald TranscriptOct 26 2022, 5:14 PM
mizvekov requested review of this revision.Oct 26 2022, 5:14 PM
Herald added a project: Restricted Project. · View Herald TranscriptOct 26 2022, 5:14 PM
Herald added a subscriber: cfe-commits. · View Herald Transcript
mizvekov added reviewers: Restricted Project, erichkeane.Oct 26 2022, 7:43 PM
mizvekov added a reviewer: rsmith.
rsmith accepted this revision.Oct 26 2022, 8:20 PM
rsmith added inline comments.
clang/test/SemaTemplate/temp_arg_nontype_cxx1z.cpp
592

Should be fixed already I think

This revision is now accepted and ready to land.Oct 26 2022, 8:20 PM
This revision was landed with ongoing or failed builds.Oct 26 2022, 8:25 PM
This revision was automatically updated to reflect the committed changes.