[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