-
Notifications
You must be signed in to change notification settings - Fork 16
Description
Description
Memory Inspector contributes two context menu items inside VARIABLES view - "Show in Memory Inspector" and "Store Memory to File". But it's not intuitive for users to determine which variables have these menu items enabled. Documentation does not help either and the enablement seems to also depend on the actual debug adapters used. From my experiments, when using CPPDG, menu items are always shown even for non-pointers or references:
Moreover, with CPPDGB, Memory Inspector incorrectly renders memory contents from actual value of the "int" variable, not what's at the integer's address:
When using Cortex Debug, menu items seem to have a more consistent enablement/visibility state, meaning that they are shown for (some) pointers or complex structs, but not for all of them. I couldn't easily figure out all the preconditions for the enablement. So it must be some implementation details from Memory Inspector that need to be documented in order to make it clear when the two menu items are shown.
How to reproduce:
- NXP SDK, NXP LPC55S69 board, a J-Link debug probe. Should not matter as long as you can replicate what's written above.
- MCUXpresso for VS Code extension installed.
- Import a "Hello World" project using the MCUXpresso for VS Code extension.
- Debug.
- Step into "CLOCK_AttachClk".
- Open Variables view and right-click some variables and check the enablement state for the two context menu items.
Expected behavior
- Documentation should make it clear in what context must "Show in Memory Inspector" and "Store Memory to File" be enabled.
- Don't enable the menu items for non-pointers, unless the extension is capable to render what's at the variable's address, not at its actual value (e.g. for integers).
Environment
- OS: WIndows 11
- Theia or VS Code Version: VS Code 1.96.4


