468,469 Members | 2,497 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 468,469 developers. It's quick & easy.

how to weak_alias of symbols in application code

I want to use alias to call a defined function (special_subroutine in
this example) using different names (special_subroutine_1 and
special_subroutine_2 in this example), is it doable? --I tried the
following way, and it did not work when I tried to compile it with
gcc. I guess weak_alias is only valid for glibc, or maybe the way I use
it was wrong.

Can someone give me a suggestion?

-------------------------------------------------------
//file name: test.c
//date: 07/09/2006
#ifdef weak_alias
weak_alias(special_subroutine_1, special_subroutine)
weak_alias(special_subroutine_1, special_subroutine)
#endif

void special_subroutine(void){
....//some computation

}

int main(int argc, char** argv){
...
special_subroutine_1( );
....
special_subroutine_2( );

}

------------------------------------------------------

By the way, I knew the following macro (#define special_subroutine_1,
special_subroutine) can make the example code work. But I really want
to keep "special_subroutine_1" in the symbol table---which means I
don't want to use this way.
#define special_subroutine_1, special_subroutine

I think MPI library does something like this. e.g it has something like
weak_alias MPI_SEND with PMPI_SEND. Maybe pthread library also does
something similiar.

Jul 12 '06 #1
0 2125

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

1 post views Thread by aerobar2 | last post: by
8 posts views Thread by | last post: by
10 posts views Thread by RDI | last post: by
3 posts views Thread by JV | last post: by
reply views Thread by seyong_choi | last post: by
reply views Thread by wojtowicz.maciej | last post: by
reply views Thread by NPC403 | last post: by
1 post views Thread by kmladenovski | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.