Erich is Professor at Lucerne University of Applied Sciences and Arts and Distinguished Member of Technical Staff at Freescale Semiconductor. Erich has a MsCS degree and 18+ years of experience in the embedded software and tools world. He created many embedded cross C/C++ compilers and debuggers. Additionally he is researching in the domain of programming languages, real time and mechatronic systems. Erich is a DZone MVB and is not an employee of DZone and has posted 47 posts at DZone. You can read more from them at their website. View Full User Profile

Debugging Global Variables

07.14.2012
| 2278 views |
  • submit to reddit

If I’m debugging my application in Eclipse or CodeWarrior, it shows in the Variables view the local and global variables of the current Thread and stack frame only:

Debug View with Variables View

Debug View with Variables View

This makes sense as this is usually where my focus is. And this is good from a performance point of view: The debugger does not need to read a lot of other variables from the target which I’m not interested in. But the question is: how to show the variables which are in other files if I really need to look at them?

Add Global Variable

To see as other variables, I use the context menu ‘Add Global Variables…‘ in the Variables view. There is as well a toolbar icon which does the same:

Add Global Variables

Add Global Variables

This opens a dialog with a list of all global variables present in my application:

Add Globals Dialog

Add Globals Dialog

Filtering and Wildcards

I can enter a filter string to be applied. That helps to narrow down the list if I do not remember the exact name:

Add Globals with Filter

Add Globals with Filter

Filter for Files

A powerful trick is to filter for variables in files. For this the format <variableName>#<fileName> is used:

Add Globals with File Filter

Add Globals with File Filter

Summary

Debugging and inspecting variables outside of the current thread or stackframe can be done with ‘Add Globals’ in the Variables view. That dialog has powerful filtering including a way to filter for variables in files.

Happy Global Debugging :-)

Published at DZone with permission of Erich Styger, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)