This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Nested function - Avoid it in symbol table
- From: Sam <samueldotj at gmail dot com>
- To: gcc-help at gcc dot gnu dot org
- Date: Sat, 16 Jun 2012 13:03:54 -0700
- Subject: Nested function - Avoid it in symbol table
Hi,
Is there any way to disable emitting nested function names in symbol table?
I tried visibility(hidden) attribute and it is not working.
The problem I have is I use nested function in a macro and which
results in embedded in multiple places causing lot of unwanted entries
symbol table increasing this of image.
Sample program:
$ cat test.c
#include <stdio.h>
int main()
{
__attribute__((visibility ("hidden")))
int nested_function()
{
printf("Hello world\n");
}
nested_function();
return 0;
}
$ readelf -s ./a.out | grep nest
50: 00000000004004a4 16 FUNC LOCAL DEFAULT 12 nested_function.2069
Thanks
Samuel