How to find source of high .bss usage?

My Arduino sketch is using too much SRAM (.data and .bss). I have moved strings into PROGMEM to reduce .data usage.

.bss usage is much higher than it should be. I only have a few ints and booleans as static globals and the only library I am using is HardwareSerial. I am wondering why .bss usage is so high (1100 bytes).

Is there a tool I can use that will show me a list of all variables and their sizes in .bss ??

Otherwise, I'm just wandering through my code, HardwareSerial and Arduino core, libgcc, libm, crtm328p looking for variables. Are variables that are only defined/accessed in a function stored in .bss? What about casts?

I am already using Atmel Studio.

It is easier to see what causes this when you post the code? Also the bss section is used for initialized global and static variables:

int unitializedVariable;

How could you have an high usage there?

Need your code or your .elf file

Otherwise there is a tool in the avr bin directory which you can use called avr-nm.

This is what I use to see a breakdown of the memory sections.

avr-nm.exe -n -S