Chyba zepuste uClibc na TH - lvm2 i device-mapper

Jakub Bogusz qboosh w pld-linux.org
Pon, 4 Cze 2007, 08:18:38 CEST


On Mon, Jun 04, 2007 at 07:20:20AM +0200, Paweł Sikora wrote:
> On Sunday 03 of June 2007 22:35:43 Jakub Bogusz wrote:
> 
> >     if (likely(_stdio_init != NULL))
> >         _stdio_init();
> >
> > ten warunek jakoś się optymalizuje do true, przez co bezwarunkowo
> > wywołuje _stdio_init(),
> 
> the address of ???_stdio_init??? will always evaluate as ???true???.

Co tak pisze? Bo nie gcc 4.1.2 ani 4.2.0 przy kompilacji uClibc.
-Wall jest w użyciu.
Bez __attribute__((weak)) dla _stdio_init() by miał do tego prawo (choć
też nie zgłasza, optymalizuje po cichu).

> tam trzeba uzyc wskaznika do funkcji, zeby to dzialalo poprawnie.

Do tej pory to była działająca konstrukcja do sprawdzania, czy symbol
z atrybutem "weak" został rozwiązany.


-- 
Jakub Bogusz    http://qboosh.pl/


Więcej informacji o liście dyskusyjnej pld-devel-pl