When I use `__attribute__ ((weak))` like in [this post](http://www.kolpackov.net/pipermail/notes/2004-March/000006.html) I get warnings from gcc about redeclaring the symbol, while all I do is adding an attribute. Can the attribute be attached differently? The warnings I get look like this:

```
threads.c:53: warning: redundant redeclaration of ‘pthread_once’
/usr/include/pthread.h:478: note: previous declaration of ‘pthread_once’ was here

```