Skip to content

IntelliSense false error: vector iterators not comparable #14453

@huhu9001

Description

@huhu9001

Environment

  • VSCode Version: 1.120.0
  • OS: Linux x64 7.0.6-200.fc44.x86_64
  • C/C++ Extension: 1.32.2

Bug Summary and Steps to Reproduce

Bug Summary:

Sample code

#include<string>
#include<vector>
#include<iostream>

int main() {
    std::vector<int> v{1, 2, 3};
    std::cout << (v.begin() <= v.end()) << '\n';
    std::string s = "aaa";
    std::cout << (s.begin() <= s.end()) << '\n';
}

IntelliSense error "no operator '<=' matches this operands" for both v and s.

Expected behavior:

Should be no error.

Configuration and Logs

-------- Diagnostics - 5/15/2026, 10:15:28 PM
Version: 1.32.2
Current Configuration:
{
    "name": "Linux",
    "includePath": [],
    "defines": [
        "_GLIBCXX_DO_NOT_USE_BUILTIN_TRAITS"
    ],
    "compilerPath": "/usr/bin/g++",
    "cStandard": "c17",
    "cppStandard": "c++23",
    "intelliSenseMode": "linux-gcc-x64",
    "compilerPathIsExplicit": true,
    "cStandardIsExplicit": true,
    "cppStandardIsExplicit": true,
    "intelliSenseModeIsExplicit": true,
    "recursiveIncludesReduceIsExplicit": false,
    "recursiveIncludesPriorityIsExplicit": false,
    "recursiveIncludesOrderIsExplicit": false,
    "compilerPathInCppPropertiesJson": "/usr/bin/g++",
    "mergeConfigurations": false,
    "recursiveIncludes": {},
    "browse": {
        "limitSymbolsToIncludedHeaders": true
    }
}
Additional Tracked Settings:
{
    "editorTabSize": 4,
    "editorInsertSpaces": true,
    "editorAutoClosingBrackets": "languageDefined",
    "filesEncoding": "utf8",
    "filesAssociations": {},
    "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.32.2.0
Current database path: /home/_/.cache/vscode-cpptools/ee064ba49b1a618011b06cc8cd61a68e/.browse.VC.db
Translation Unit Mappings:
[ /home/_/_/src/test/t1.cpp - source TU]:
Translation Unit Configurations:
[ /home/_/_/src/test/t1.cpp ]
    Process ID: 40301
    Memory Usage: 139 MB
    Compiler Path: /usr/bin/g++
    Include Paths:
        system include: /usr/include/c++/16
        system include: /usr/include/c++/16/x86_64-redhat-linux
        system include: /usr/include/c++/16/backward
        system include: /usr/lib/gcc/x86_64-redhat-linux/16/include
        system include: /usr/local/include
        system include: /usr/include
    Defines:
        _GLIBCXX_DO_NOT_USE_BUILTIN_TRAITS
    Standard Version: c++23
    IntelliSense Mode: linux-gcc-x64
    Other Flags:
        --g++
        --gnu_version=160101
Total Memory Usage: 139 MB

------- Workspace parsing diagnostics -------
Number of files discovered (not excluded): 96223
Number of files parsed: 6759

Other Extensions

No response

Additional context

  • can compile and run
  • happens no matter whether _GLIBCXX_DO_NOT_USE_BUILTIN_TRAITS defined or undefined

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions