[llvm-bugs] [Bug 33905] New: Completion provides no OVERLOAD/CXCursor_OverloadCandidate items for e.g. std::make_unique
via llvm-bugs
llvm-bugs at lists.llvm.org
Mon Jul 24 02:54:02 PDT 2017
https://bugs.llvm.org/show_bug.cgi?id=33905
Bug ID: 33905
Summary: Completion provides no
OVERLOAD/CXCursor_OverloadCandidate items for e.g.
std::make_unique
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: C++
Assignee: unassignedclangbugs at nondot.org
Reporter: nikolai.kosjar at qt.io
CC: dgregor at apple.com, llvm-bugs at lists.llvm.org
$ cat -n /tmp/untitled/main.cpp
1 #include <memory>
2 #include <string>
3
4 int main() {
5 std::string(); // Completer after '(' (5:17) - fine
6 std::make_unique<std::string>(); // Complete after '(' (6:35) - ops
7 };
There are OVERLOAD/CXCursor_OverloadCandidate items for std::string constructed
with "std::string()":
$ clang -fsyntax-only -std=c++1y -Xclang -code-completion-at -Xclang $FILE:5:17
$FILE
...
COMPLETION: wmemset : [#wchar_t *#]wmemset(<#wchar_t *__s#>, <#wchar_t __c#>,
<#size_t __n#>)
COMPLETION: wprintf : [#int#]wprintf(<#const wchar_t *__restrict __format,
...#>)
COMPLETION: wscanf : [#int#]wscanf(<#const wchar_t *__restrict __format, ...#>)
OVERLOAD: basic_string()
OVERLOAD: basic_string(<#const std::allocator<char> &__a#>)
OVERLOAD: basic_string(<#const std::basic_string<char> &__str#>)
OVERLOAD: basic_string(<#const std::basic_string<char> &__str#>,
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::size_type __pos)
OVERLOAD: basic_string(<#const std::basic_string<char> &__str#>,
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::size_type __pos, std::basic_string<char, std::char_traits<char>,
std::allocator<char> >::size_type __n, const std::allocator<char> &__a)
OVERLOAD: basic_string(<#const char *__s#>, std::basic_string<char,
std::char_traits<char>, std::allocator<char> >::size_type __n)
OVERLOAD: basic_string(<#const char *__s#>)
OVERLOAD: basic_string(<#std::basic_string<char, std::char_traits<char>,
std::allocator<char> >::size_type __n#>, char __c)
OVERLOAD: basic_string(<#std::basic_string<char> &&__str#>)
OVERLOAD: basic_string(<#initializer_list<char> __l#>)
OVERLOAD: basic_string(<#const std::basic_string<char> &__str#>, const
std::allocator<char> &__a)
OVERLOAD: basic_string(<#std::basic_string<char> &&__str#>, const
std::allocator<char> &__a)
OVERLOAD: basic_string(<#_InputIterator __beg#>, _InputIterator __end)
...but none (for std::string) if constructed with std::make_unique:
$clang -fsyntax-only -std=c++1y -Xclang -code-completion-at -Xclang $FILE:6:35
$FILE
...
COMPLETION: wmemset : [#wchar_t *#]wmemset(<#wchar_t *__s#>, <#wchar_t __c#>,
<#size_t __n#>)
COMPLETION: wprintf : [#int#]wprintf(<#const wchar_t *__restrict __format,
...#>)
COMPLETION: wscanf : [#int#]wscanf(<#const wchar_t *__restrict __format, ...#>)
OVERLOAD: [#typename _MakeUniq<basic_string<char>
>::__single_object#]make_unique()
--
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/20170724/7ff6ad30/attachment.html>
More information about the llvm-bugs
mailing list