Is the debug info exported in the binary in DWARF format? And if so would 
this package work https://golang.org/pkg/debug/dwarf/?
What about the global variables or the ones allocated on the heap? Are they 
also not available inside the runtime either?

On Wednesday, 10 April 2019 13:28:49 UTC-7, Ian Lance Taylor wrote:
>
> On Tue, Apr 9, 2019 at 7:43 AM <vaastav...@gmail.com <javascript:>> 
> wrote: 
> > 
> > I have been working on a research project where I have been modifying 
> the runtime such that I can control the goroutines that are scheduled as 
> well as get access to the values of program variables. 
> > I know I can access the stack through the g struct for a goroutine but I 
> was wondering if someone could tell me how to get the symbol/object table 
> so that I can figure out the names of the local variables on the stack for 
> the goroutine as well as the variables on the heap. 
> > Any help would be greatly appreciated. 
>
> The names of local variables on the stack are recorded only the debug 
> information, which is not loaded into memory.  You would need to 
> locate the binary, open it, and look at the debug info.  Getting a 
> local variable name from the debug info is complex, but Delve and gdb 
> manage to do it. 
>
> That is, getting the names of local variables is technically possible 
> but quite hard.  I wouldn't recommend this approach. 
>
> Ian 
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to