[C++] instruction bizarre qui compile

instruction bizarre qui compile [C++] - C++ - Programmation

Marsh Posté le 18-10-2006 à 17:27:29    

Bonjour :hello:
 
 
J'ai par erreur écrit ce qui suit et le compilateur l'a accepté, quelqu'un aurait une idée de la raison?
 
 
std::vector< std::vector<int> > list;
 
 
list[0]|1] = 42;
 
avec à la place d'un crochet un "pipe"...

Reply

Marsh Posté le 18-10-2006 à 17:27:29   

Reply

Marsh Posté le 18-10-2006 à 17:42:55    


Un bon vieux bug dans ton compilateur?
Essaye avec un autre compilo pour voir, sinon tu peux essayer de tracer l'assembleur produit pour voir la tete du déroulement...
 
Et si c'est vraiment réglo va vite postuler à l'IOCCC sur http://www.ioccc.org/, ya de la matière :)

Reply

Marsh Posté le 18-10-2006 à 18:26:45    

quel est ton compilo ?
en tout cas ça ne semble pas valide
il n'y a même pas un truc avec les trigrammes...

Reply

Marsh Posté le 18-10-2006 à 18:33:50    

Mais si, ca pourrait ptetre etre valide-mais-bien-gore, avec sur la ligne précédente qq chose comme ça:
 
list[i][
 
Et ensuite avec tout ce qu'il faut de surcharge d'opérateurs etc pour rendre OK le deuxieme argument de la liste qui vaudrait alors ( list[0] | 1 ).
 
Uhh ;)

Reply

Marsh Posté le 18-10-2006 à 18:46:32    

déjà il semble manquer un crochet, et la grammaire du C++ n'est pas surchargeable (faut pas exagérer !).
Alors à moins qu'il y ait une super macro dégueu avant...

Reply

Marsh Posté le 18-10-2006 à 19:05:59    

Je penche pour le crochet qui s'affiche comme un pipe sur un écran lcd avec une résolution non native. [:ddr555]
Tu peux faire un copier/coller sur le forum, à moins que ça soit déja le cas ;)


Message édité par Evadream -jbd- le 18-10-2006 à 19:06:32
Reply

Marsh Posté le 19-10-2006 à 09:00:56    

Je suis sous SunOS5.8, le compilateur est "CC -xarch=v8plusa", avec un autre compilateur ça n'est pas passé...

Reply

Marsh Posté le 19-10-2006 à 09:20:21    

>> Je suis sous SunOS5.8, le compilateur est CC
 
ah ben voilà, je me disais qu'il devait y avoir un truc...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed