Un article CodeSOD publié le 15 juillet 2026 sur The Daily WTF, signé Remy Porter, présente un motif de code dans un projet principalement écrit en C, envoyé par un développeur nommé Stevie.
Dans ce projet, les fonctions renvoient généralement un BOOL pour indiquer le succès ou l’échec : TRUE signifie succès, FALSE échec. La vérification classique s’écrit `BOOL success = someFunc(); if (!success) { ... }`.
Un développeur ancien utilise pourtant la forme inverse : `BOOL error = someFunc();` puis `if (error == FALSE) { ... }`. C’est dans ce bloc que l’échec est traité, fréquemment avec `errorCode = GetLastError();`. Le nom de la variable suggère que sa valeur vraie représente une erreur, alors qu’elle contient en réalité le statut de succès.
Comme ce développeur est présent depuis longtemps et que son code a suffisamment d’inertie, ce motif est devenu la convention de facto dans une grande partie de la base, sans jamais être documenté. Les nouveaux arrivants commencent par le style plus limpide, mais le poids du code existant est plus fort et finit par les entraîner dans la même idiomatique confuse. L’auteur y voit moins un WTF spectaculaire qu’une irritation constante.
Commentaires
Pas encore de commentaire — écris le premier.
Lance la discussion
Pas de compte ni de mot de passe — saisis simplement ton adresse e-mail et nous t’envoyons un lien de connexion à usage unique. Première visite ? Tout se met en place automatiquement.
Ton évaluation sera appliquée automatiquement après ta connexion.
Vérifie ta boîte mail
Nous avons envoyé un lien de connexion à …. Ouvre-le sur cet appareil — cet onglet te connectera automatiquement.
Rien reçu ? Vérifiez le dossier spam — et marquez le message « Non spam » pour qu'il arrive directement la prochaine fois.