I recently noticed that local variables were not being displayed. After a little bit of investigation, it appears this only happens if navigating more than 2 stack frames from the top. This seems to be due to the mapping of stack frames/thread id to the the DAP variablesReference (i.e., level << 16 | threadId). This mapping, when navigating more than 2 stack frames deep exceeds the starting point for handle objects (i.e., VAR_HANDLES_START), and is incorrectly classified as a variable object in MI2DebugSession::variablesRequest (mibase.ts).


