Skip to content

Macro ifdef incorrectly parsed #12879

@raholly

Description

@raholly

Environment

  • OS and Version: Windows 11 23H2
  • VS Code Version: v1.94.2
  • C/C++ Extension Version: v1.22.10
  • If using SSH remote, specify OS of remote machine: CentOS 7.9

Bug Summary and Steps to Reproduce

Bug Summary:
I found that when Chinese characters appear in the middle of an ifdef macro, the code parsing will be incorrect.
The below screenshots show the issue. A very strange problem.
The first image is correct, while the parsing in the second and third images is incorrect.

Image

Image

Image

By the way, I tested version 1.21.6 of the C/C++ extension and didn't encounter this issue.

Configuration and Logs

Here is c_cpp_properties.json

{
"configurations": [
{
"name": "Linux",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [],
"compilerPath": "/usr/local/bin/clang",
"intelliSenseMode": "linux-clang-x64"
}
],
"version": 4
}

Other Extensions

No response

Additional context

No response

Metadata

Metadata

Assignees

Labels

Feature: ColorizationLanguage ServicebugfixedCheck the Milestone for the release in which the fix is or will be available.regressionA bug that didn't exist in a previous releaseworld readyAn issue relating string character encodings, localization translations, etc.

Type

Projects

Status

Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions