vscode-cpptools icon indicating copy to clipboard operation
vscode-cpptools copied to clipboard

IntelliSense: False positive error message for std::unique_ptr return type

Open nanlour opened this issue 1 year ago • 1 comments

Environment

  • OS and Version: Ubuntu 22.04.3 LTS
  • VS Code Version:
  • C/C++ Extension Version: v1.19.3 (pre-release)
  • If using SSH remote, specify OS of remote machine: None

Bug Summary and Steps to Reproduce

Bug Summary: Screenshot from 2024-02-18 20-35-10 The code work fine, but for line 14, I got error message: function "std::unique_ptr<_Tp, _Dp>::unique_ptr(const std::unique_ptr<_Tp, _Dp> &) [with _Tp=int, _Dp=std::default_delete]" (declared at line 468 of "/usr/include/c++/11/bits/unique_ptr.h") cannot be referenced -- it is a deleted functionC/C++(1776).

I think when return, the unique pointer are tread as rvalue to construct return type fool, but IntelliSense think it is lvalue.

Expected behavior: No error message.

Configuration and Logs

{
    "configurations": [
        {
            "name": "Linux",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [],
            "cStandard": "c17",
            "cppStandard": "c++17",
            "intelliSenseMode": "linux-gcc-x64"
        }
    ],
    "version": 4
}

Other Extensions

No response

Additional context

No response

nanlour avatar Feb 18 '24 12:02 nanlour

@nanlour The bug also repros with VS (shared code), so I've filed a bug at https://developercommunity.visualstudio.com/t/C-IntelliSense-gives-an-incorrect-erro/10594068 .

sean-mcmanus avatar Feb 20 '24 20:02 sean-mcmanus