Bienvenue sur PEBKAC.fr, le site qui recense les anecdotes où l’on se moque des utilisateurs ne maîtrisant pas l’outil informatique. PEBKAC est un acronyme signifiant « Problem Exists Between Keyboard And Chair ».
Le problème se situe entre la chaise et le clavier : soumettez vos histoires, donnez votre avis !
Ce site n'est pas le site original pebkac.fr. Je publie ici la liste des PEBKAC que j'ai pu sauvegarder avant que le site original ne soit mis hors ligne.
Reprenant le code d'un collègue, je tombe sur de nombreux blocs étranges :

Switch(variable) 
{
  default:
    [Code…]
    break;

  [Code…]
}

Il n'y en aurait qu'un seul, j'aurais mis ça sur le dos d'une modification ratée ou d'un débug oublié. Mais il y en a des pages ! J'ai peur pour la suite de la reprise du code… PEBKAC.
PEBKAC #8120 proposé par OzoneGrif le 08/07/2013 | 22 commentaires | 👍🏽 👎🏽 +142
- Envie d'un break ?
- Comment le sais-tu ?
- Heu, comme ça...
Commentaire #100845 écrit par Aaargh!!! le 08/07/2013 à 12h45 | 👍🏽 👎🏽
Ben quoi, il est farpait ce code.
Commentaire #100850 écrit par Pifenmoins le 08/07/2013 à 12h52 | 👍🏽 👎🏽
PS : il lui arrivait parfois d'écrire "farpait" pour décrire ses sites.
Commentaire #100854 écrit par Aaargh!!! le 08/07/2013 à 13h02 | 👍🏽 👎🏽
À ce niveau-là il devait vraiment être « frapait » s'il faisait ça en contexte professionnel.

S'enfuit après avoir notifier GN que la phôtte d'eaurtaugraffe était volontaire
Commentaire #100862 écrit par Noname le 08/07/2013 à 13h24 | 👍🏽 👎🏽
GN est décédé, je viens de voir Permalien qui passait pour le ramener à la vie.
Commentaire #100869 écrit par Aaargh!!! le 08/07/2013 à 13h34 | 👍🏽 👎🏽
j'espère que le programme n'est pas conçu pour tourner 24h/24 7j/7!!!
même 2 heures, ça pourrait suffire pour planter!!!
Commentaire #100877 écrit par nonolelion le 08/07/2013 à 13h49 | 👍🏽 👎🏽
À ce niveau là il n'y a qu'une seule explication possible : c'est réellement lui qui poste sur ce site en utilisant ce nom d'utilisateur. Il t'espionne, mon pauvre Aaargh!!!
Commentaire #100879 écrit par Gné? le 08/07/2013 à 13h51 | 👍🏽 👎🏽
Il aurait un sacré humour, dans ce cas...
Commentaire #100880 écrit par Aaargh!!! le 08/07/2013 à 13h55 | 👍🏽 👎🏽
Ça c'est de l'optimisation comme je l'aime ! :)
Commentaire #100886 écrit par Youplà le 08/07/2013 à 14h13 | 👍🏽 👎🏽
C'est inhabituel, perturbant et peut mener à des comportements bizarre, donc à éviter, mais au moins en Java je ne vois rien de faux là dedans, vu qu'un SWITCH est un saut d'étiquette (équivalent à un GOTO vers l'unique CASE correspondant)
Commentaire #100903 écrit par Sly le 08/07/2013 à 16h34 | 👍🏽 👎🏽
Non en java il te dit unreachable code. De même quand tu écris du code après un return

Comme en C, quand tu lui demandes, il est sensé te les afficher.
Commentaire #100905 écrit par but2ene le 08/07/2013 à 16h46 | 👍🏽 👎🏽
Enfin un bout de code qui prend en compte 110% des possibilités !
Donc l'instruction switch passe en revue tous les cas, voire même -par défaut- ceux non-imaginés par le rédacteur du code, voire même -encore plus fort- ceux non-imaginables... C'est excellent !
Commentaire #100906 écrit par switchman le 08/07/2013 à 16h59 | 👍🏽 👎🏽
140% je dirais même. Il est russe, c'est pour ça.
Commentaire #100907 écrit par Limeila le 08/07/2013 à 17h06 | 👍🏽 👎🏽
Je viens de tester en Java 5 (seul SDK que j'ai sous là main là maintenant) et aucun unreachable code ...
Commentaire #100908 écrit par Sly le 08/07/2013 à 17h15 | 👍🏽 👎🏽
essaye le 7 ;)

http://imageshack.us/photo/my-images/834/khaq.png/
Commentaire #100909 écrit par but2ene le 08/07/2013 à 17h25 | 👍🏽 👎🏽
j'ai eu à l'époque ou je les utilisais des compilateurs mal foutus, et mes références sont surtout sur des micro-contrôleurs dont la pile se remplissait très rapidement... avec une gestion des interruptions déplorable en plus.....
Commentaire #100913 écrit par nonolelion le 08/07/2013 à 17h50 | 👍🏽 👎🏽
Ce programme tourne 24/7 et plante de toute manière car il y a des erreurs de synchro entre les threads, et des erreurs non gérées partout. Avec de la chance, le serveur va tourner deux ou trois mois avant de planter. Mais comme pour tout problème de thread, tout dépend du matériel.

Les switchs n'y sont pour rien... Le code (derrière les breaks) ne semble pas être important. Personnellement je l'aurais juste mis en commentaire.
Commentaire #100914 écrit par OzoneGrif le 08/07/2013 à 17h52 | 👍🏽 👎🏽
C'était du C.

Et comme le dit But2ene, en Java 6 ou 7, il y aurait une erreur.
Commentaire #100917 écrit par OzoneGrif le 08/07/2013 à 17h57 | 👍🏽 👎🏽
Ca n'indique rien : -Wunreachable-code ?

ps : Ah désactivé en 2011. Je laisse le lien ca peut-être intéressant pour les autres.
http://gcc.gnu.org/ml/gcc-help/2011-05/msg00360.html
Commentaire #100920 écrit par but2ene le 08/07/2013 à 18h10 | 👍🏽 👎🏽
OK je n'ai pas compris le PEBKAC en fait, j'ai mal lu et n'ai pas vu le bout [CODE] après le break, on ne se comprenait donc pas, ça me rassure
Commentaire #100925 écrit par Sly le 08/07/2013 à 19h12 | 👍🏽 👎🏽
j'en vois tous les jours du comme ca....
j'ai eu la variante:

switch(variable){
case (var1 == var2)
code;
break
...
}

Un beau bordel quand la variable est à 0 car le test faux est donc égal à 0....
Commentaire #100939 écrit par Krogoth le 08/07/2013 à 21h37 | 👍🏽 👎🏽
Pas mal le code qui ne s'exécutera jamais...
Autant que le Switch case qui ne sert à rien...
ça sent le code pas tester :-/
Commentaire #100964 écrit par lillix le 09/07/2013 à 07h43 | 👍🏽 👎🏽