[llvm-bugs] [Bug 47396] New: Derive std::raw_storage_iterator publicly from std::iterator<output_iterator_tag, void, void, void, void>

via llvm-bugs llvm-bugs at lists.llvm.org
Wed Sep 2 08:20:20 PDT 2020


https://bugs.llvm.org/show_bug.cgi?id=47396

            Bug ID: 47396
           Summary: Derive std::raw_storage_iterator publicly from
                    std::iterator<output_iterator_tag,void,void,void,void>
           Product: libc++
           Version: unspecified
          Hardware: Other
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: All Bugs
          Assignee: unassignedclangbugs at nondot.org
          Reporter: steplong at quicinc.com
                CC: llvm-bugs at lists.llvm.org, mclow.lists at gmail.com

When using clang++ from Ubuntu's packages, the code below compiles with the
following error:

clang++-10 -stdlib=libc++ main.cc

#include <memory>

int main()
{
    int a;
    std::raw_storage_iterator<int *, int> i(&a);
    std::iterator<std::output_iterator_tag, void, void, void, void> *p = &i;
}

main.cc:7:70: error: cannot initialize a variable of type
'std::iterator<std::output_iterator_tag, void, void, void, void> *' with an
rvalue of type 'std::raw_storage_iterator<int *, int> *'                       
 std::iterator<std::output_iterator_tag, void, void, void, void> *p = &i;       
                                                                 ^   ~~        
                                                                               
                                               1 error generated.

-- 
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/20200902/5613ae6f/attachment.html>


More information about the llvm-bugs mailing list