Skip to content

Function tooltips display in/out parameters twice #13698

Closed

Description

@EtienneBasilik

Environment

  • OS and Version: Windows 11 24H2
  • VS Code Version:
    Version: 1.100.3 (user setup)
    Commit: microsoft/vscode@258e40f
    Date: 2025-06-02T13:30:54.273Z
    Electron: 34.5.1
    ElectronBuildId: 11369351
    Chromium: 132.0.6834.210
    Node.js: 20.19.0
    V8: 13.2.152.41-electron.0
    OS: Windows_NT x64 10.0.26100
  • C/C++ Extension Version:
    C/C++ v1.25.3
    C/C++ Extension Pack v1.3.1
    C/C++ Themes v2.0.0
  • If using SSH remote, specify OS of remote machine: No

Bug Summary and Steps to Reproduce

When using Doxygen style comments to describe a function which has in/out parameters and using the format supported by Doxygen, i.e. "[in,out]" (https://www.doxygen.nl/manual/commands.html#cmdparam), VS Code hover tooltip shows in/out parameters twice:

Image

Image

Whereas when we use non-standard "[inout]" format, VS Code correctly displays each parameter once and recognizes this format: syntax coloring puts "inout" in blue whereas it does not recognize any other random direction such as "wrongdir":

Image

Image

Is there a reason for displaying the parameter twice? If not, please fix the extension to display it once. This is better than using non-standard [inout] format which will most likely not be accepted by other tools.

Thanks.

Configuration and Logs

c_cpp_properties.json:
{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${default}",
                "${workspaceFolder}/**"
            ],
            "defines": [
                "__NDEBUG"
            ],
            "windowsSdkVersion": "10.0.19041.0",
            "compilerPath": "C:\\msys64\\ucrt64\\bin\\g++.exe",
            "cStandard": "gnu17",
            "cppStandard": "gnu++17",
            "intelliSenseMode": "linux-clang-x86"
        }
    ],
    "version": 4
}


Log diagnostics:
-------- Diagnostics - 6/13/2025, 1:17:11 PM
Version: 1.25.3
Current Configuration:
{
    "name": "Win32",
    "includePath": [],
    "defines": [
        "__NDEBUG"
    ],
    "windowsSdkVersion": "10.0.19041.0",
    "compilerPath": "C:\\msys64\\ucrt64\\bin\\g++.exe",
    "cStandard": "gnu17",
    "cppStandard": "gnu++17",
    "intelliSenseMode": "linux-clang-x86",
    "compilerPathIsExplicit": true,
    "cStandardIsExplicit": true,
    "cppStandardIsExplicit": true,
    "intelliSenseModeIsExplicit": true,
    "recursiveIncludesReduceIsExplicit": false,
    "recursiveIncludesPriorityIsExplicit": false,
    "recursiveIncludesOrderIsExplicit": false,
    "compilerPathInCppPropertiesJson": "C:\\msys64\\ucrt64\\bin\\g++.exe",
    "mergeConfigurations": false,
    "recursiveIncludes": {},
    "browse": {
        "limitSymbolsToIncludedHeaders": true
    }
}
Additional Tracked Settings:
{
    "editorTabSize": 2,
    "editorInsertSpaces": true,
    "editorAutoClosingBrackets": "languageDefined",
    "filesEncoding": "utf8",
    "filesAssociations": {
        "*.m": "matlab",
        "some_file.h": "c"
    },
    "filesExclude": {
        "**/.git": true,
        "**/.svn": true,
        "**/.hg": true,
        "**/.DS_Store": true,
        "**/Thumbs.db": true
    },
    "filesAutoSaveAfterDelay": false,
    "editorInlayHintsEnabled": true,
    "editorParameterHintsEnabled": true,
    "searchExclude": {
        "**/node_modules": true,
        "**/bower_components": true,
        "**/*.code-search": true
    },
    "workbenchSettingsEditor": "ui"
}
cpptools version (native): 1.25.3.0
Current database path: C:\USERS\<user>\APPDATA\LOCAL\MICROSOFT\VSCODE-CPPTOOLS\1859E3CA8E6B8D00DEE25A3B0086DAA3\.BROWSE.VC.DB
Translation Unit Mappings:
[ <my C file> - source TU]:
Translation Unit Configurations:
[ <my C file> ]
    Process ID: 47256
    Memory Usage: 57 MB
    Compiler Path: C:\msys64\ucrt64\bin\g++.exe
    Include paths:
        system include: C:\msys64\ucrt64\lib\gcc\x86_64-w64-mingw32\13.2.0\include
        system include: C:\msys64\ucrt64\include
        system include: C:\msys64\ucrt64\lib\gcc\x86_64-w64-mingw32\13.2.0\include-fixed
    Defines:
        __NDEBUG
    Standard Version: c17
    IntelliSense Mode: windows-gcc-x86
    Other Flags:
        --gcc
        --gnu_version=130200
Total Memory Usage: 57 MB

------- Workspace parsing diagnostics -------
Number of files discovered (not excluded): 18943
Number of files parsed: 221

Other Extensions

Issue persists after disabling all extensions.

Additional context

No response

Activity

  1. sean-mcmanus commented on Jun 13, 2025

    @sean-mcmanus
    Contributor

    EtienneBasilik This was a known issue that was already being worked on, related to #13682

  2. added
    fixedCheck the Milestone for the release in which the fix is or will be available.
    on Jun 18, 2025
  3. moved this from Pull Request to Done in cpptoolson Jun 18, 2025
  4. EtienneBasilik commented on Jun 20, 2025

    @EtienneBasilik
    Author

    Indeed. With C/C++ extension v1.26.2 it is fixed and also the order is better than before:

    Image

    Thanks!

  5. locked and limited conversation to collaborators on Aug 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Feature: Doc commentsAn issue related to code comments shown in hover, completion, and signature help.Language ServiceVisual StudioInherited from Visual StudiobugfixedCheck the Milestone for the release in which the fix is or will be available.

    Type

    Projects

    • Status
      Done

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions