Copyright (C) 2000-2012 |
GNU Info (stabs.info)Global VariablesGlobal Variables ================ A variable whose scope is not specific to just one source file is represented by the `G' symbol descriptor. These stabs use the `N_GSYM' stab type (C_GSYM for XCOFF). The type information for the stab (Note: String Field) gives the type of the variable. For example, the following source code: char g_foo = 'c'; yields the following assembly code: .stabs "g_foo:G2",32,0,0,0 # 32 is N_GSYM .global _g_foo .data _g_foo: .byte 99 The address of the variable represented by the `N_GSYM' is not contained in the `N_GSYM' stab. The debugger gets this information from the external symbol for the global variable. In the example above, the `.global _g_foo' and `_g_foo:' lines tell the assembler to produce an external symbol. Some compilers, like GCC, output `N_GSYM' stabs only once, where the variable is defined. Other compilers, like SunOS4 /bin/cc, output a `N_GSYM' stab for each compilation unit which references the variable. automatically generated by info2www version 1.2.2.9 |