• [^] # Re: Attention quand même

    Posté par (site web personnel) . En réponse à la dépêche La robustesse de nombreux navigateurs web mise en cause. Évalué à 2.

    <<
    { free(x); x = NULL; };
    ce qui est syntaxiquement incorrect : on ne peut pas avoir de point virgule après une fermeture d'accollade. Donc ca compilera pas.
    >>

    Tu pourrais me citer tes sources ? Ca compile sous gcc meme en etant strict:

    #include <stdlib.h>

    int main()
    {
    int a;
    int *x;

    { a=1; };
    a=2;;

    { free(x); x = NULL; };
    return 0;
    }

    philippe@werewindle ~/c/tests $ gcc -Wall -ansi -pedantic bracket_colon.c
    philippe@werewindle ~/c/tests $ gcc --version
    gcc (GCC) 3.2.3 20030422 (Gentoo Linux 1.4 3.2.3-r1, propolice)
    Copyright (C) 2002 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions. There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


    D'apres mes souvenirs, un ';' est une instruction parfaitement valide. En revanche, il y aurait certains compilateurs sur lesquels ca poserait probleme.