cppdbg throws "Unable to find child property"

Open
#14,036 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
cpp, typescript, vscode

Research direction

Start by reproducing the sequence with the Variables window hidden, then inspect the dataBreakpointInfo request and the related evaluate call in the cppdbg debugger adapter. Use the supplied GDB/MI log to trace the empty expression and child-property lookup. Done means dataBreakpointInfo no longer produces the error and the watched item's context menu appears.

Written by the indexing model from the issue text.

Description

bug debugger help wanted
Environment

Version: 1.106.0-insider (user setup)
Commit: 18d828e5d596e56b516fac7baa53e4b32cf087be
Date: 2025-11-04T05:03:04.572Z
Electron: 37.7.0
ElectronBuildId: 12597478
Chromium: 138.0.7204.251
Node.js: 22.20.0
V8: 13.8.258.32-electron.0
OS: Windows_NT x64 10.0.26200

Bug Summary and Steps to Reproduce

Bug Summary:
The cppdbg debugger adapter throws "Unable to find child property."
Refer: https://github.com/microsoft/vscode/issues/273721

Steps to reproduce:

  1. in vscode, open a c++ project
  2. set a breakpoint and start debugging to hit that
  3. hide the 'Variables' window
  4. reload the vscode
  5. start debugging again, add an variable in watch, right on the watched item.
    the context menu doesn't show up due to the dataBreakpointInfo() call into cppdbg debugger adapter throws "Unable to find child property.
Debugger Configurations
{
	"version": "0.2.0",
	"configurations": [
		{
			"name": "(gdb) Launch",
			"type": "cppdbg",
			"request": "launch",
			"program": "${workspaceFolder}/out",
			"args": [],
			"stopAtEntry": false,
			"cwd": "${workspaceFolder}",
			"environment": [],
			"externalConsole": false,
			"MIMode": "gdb",
			"setupCommands": [
				{
					"description": "Enable pretty-printing for gdb",
					"text": "-enable-pretty-printing",
					"ignoreFailures": true
				}
			]
		}
	]
}
Debugger Logs
<--   C (evaluate-18): {"command":"evaluate","arguments":{"expression":"","frameId":1000,"context":"hover","line":15,"column":0,"source":{"name":"main.cpp","path":"c:\\Users\\brchen\\repos\\test-cpp\\src\\main.cpp","sources":[],"checksums":[]}},"type":"request","seq":18}
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (4390) <-1030-var-create  - * \"\"\r\n"},"seq":690}
1: (4390) <-1030-var-create  - * ""
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (4399) ->1030^error,msg=\"-var-create: unable to create variable object\"\r\n"},"seq":692}
1: (4399) ->1030^error,msg="-var-create: unable to create variable object"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (4399) 1030: elapsed time 9\r\n"},"seq":694}
1: (4399) 1030: elapsed time 9
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (4399) ->(gdb)\r\n"},"seq":696}
1: (4399) ->(gdb)
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (4400) ->&\"\\n\"\r\n"},"seq":698}
1: (4400) ->&"\n"
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (4400) ->^done\r\n"},"seq":700}
1: (4400) ->^done
--> E (output): {"type":"event","event":"output","body":{"category":"console","output":"1: (4400) ->(gdb)\r\n"},"seq":702}
1: (4400) ->(gdb)
--> R (evaluate-18): {"type":"response","request_seq":18,"success":false,"command":"evaluate","message":"Evaluation error","body":{},"seq":704}
<--   C (dataBreakpointInfo-19): {"command":"dataBreakpointInfo","arguments":{"name":"s.x","frameId":1000},"type":"request","seq":19}
--> R (dataBreakpointInfo-19): {"type":"response","request_seq":19,"success":false,"command":"dataBreakpointInfo","message":"Unable to get info for data breakpoint. Unable to find child property.","body":{},"seq":707}
Other Extensions

No response

Additional Information

No response

Dominant language
TypeScript
Stars
6.2k
Forks
1.7k
Avg merge
14h 46m
Merged PRs (30d)
61

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from microsoft/vscode-cpptools

All issues in microsoft/vscode-cpptools

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.