[llvm-bugs] [Bug 41360] Set of pointer to incomplete type gives wrong warning message.
via llvm-bugs
llvm-bugs at lists.llvm.org
Thu Apr 11 09:23:11 PDT 2019
https://bugs.llvm.org/show_bug.cgi?id=41360
Louis Dionne <ldionne at apple.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |FIXED
Fixed By Commit(s)| |358189
Status|NEW |RESOLVED
--- Comment #10 from Louis Dionne <ldionne at apple.com> ---
Should be fixed with r358189:
commit 7c142fcc06850c7cee3cdb07e98cc57f04ee5e8b
Author: Louis Dionne <ldionne at apple.com>
Date: Thu Apr 11 16:14:56 2019 +0000
[libc++] Make sure we don't eagerly diagnose non-const comparators for
containers of incomplete types
Summary:
In r348529, I improved the library-defined diagnostic for using containers
with a non-const comparator/hasher. However, the check is now performed
too early, which leads to the diagnostic being emitted in cases where it
shouldn't. See PR41360 for details.
This patch moves the diagnostic to the destructor of the containers, which
means that the diagnostic will only be emitted when the container is
instantiated
at a point where the comparator and the key/value are required to be
complete.
We still retain better diagnostics than before r348529, because the
diagnostics
are performed in the containers themselves instead of __tree and
__hash_table.
As a drive-by fix, I improved the diagnostic to mention that we can't find
a _viable_ const call operator, as suggested by EricWF in PR41360.
Reviewers: EricWF, mclow.lists
Subscribers: christof, jkorous, dexonsmith, libcxx-commits, zoecarver
Tags: #libc
Differential Revision: https://reviews.llvm.org/D60540
llvm-svn: 358189
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20190411/8cf1d1ce/attachment.html>
More information about the llvm-bugs
mailing list