• [^] # Re: Nom par défaut gcc/clang

    Posté par (site web personnel, Mastodon) . En réponse au journal [LWN] Une porte de sortie pour a.out. Évalué à 4.

    De plus, POSIX demande un compilateur C99, aujourd'hui on est bientôt à C23, ce serait dommage de rester sur des anciennes versions juste pour être 100% POSIX compliant.

    C'est pas une lecture un peu biaisée ? Et justifiée par la course à la nouvelle ? :-)
    POSIX n'impose pas de version/marque/éditeur de compilateur, et ne peut pas demander d'utiliser qu'un compilo C99. Tu peux utiliser C23 ou plus ; c'est juste que tu dois pouvoir compiler avec tout compatible C99 (cela inclus ta nouvelle version de compilateur si elle n'a pas cassé la compatibilité) pour être 100% POSIX.

    Une bonne partie des développeurs sensés activent tôt ou tard les warnings (options -W de gcc/clang) qui n'est évidemment pas couvert par POSIX et donc ton utilisation non portable.

    Tu sous-entends que, pour toi, les avertissements du compilateur sont incompatibles avec POSIX ? Le but n'était pourtant pas d'avoir une liste figée d'options mais d'avoir un minimum syndical qui fonctionne de manière identique (bien sûr, quand on veut faire portable on se retient d'utiliser des choses qui ne le sont pas, mais de là à conclure que la norme dit que ça ne doit pas exister ça me laisse sans voix.) :-)

    POSIX stipule l'option -o de disponible donc quiconque voulait un nom de fichier prédictif devrait l'utiliser de toute manière.

    L'un n'empêche pas l'autre et il y a (malheureusement) un nom par défaut stipulé. Il faudrait appeler à une évolution dans la prochaine évolution de POSIX au lieu de juste dire que aux gens qui suivent les règles que ce n'est pas recevable.
    Ceci dit, on devrait effectivement/explicitement faire -o a.out (je me méfie toujours des choses implicites car elles peuvent casser et faire perdre du temps) ; sauf que ça n'empêche pas la problématique actuelle de demeurer. :-)

    "It is seldom that liberty of any kind is lost all at once." ― David Hume