Voilà un code minimisé de ce qui risque de mener à ma calvitie prématurée à 4h du matin...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 #include <iostream> enum myshortenum : unsigned short { val1, val2 }; void f_int_short(int i) { std::cout << "f*ck it's an int !" << i; } void f_int_short(unsigned short i) { std::cout << "cool it's an unsigned short !" << i; } int main() { myshortenum e = myshortenum::val1; f_int_short(e); }
Selon le standard, quelle devrait être la sortie ?
Selon moi "cool it's an unsigned short !".
Selon g++4.7.2 il en est tout autrement... testé sous windows avec mingw32 et linux par Rachel sous 4.8(et aussi sous ideone pour faire bonne mesure, pas trouvé clang online malheureusement
).
Partager