30

en ce qui me semblait, mais c'est GCC qui m'a filé un doute, car pour a[i]=i++C'est bi il donne un warning, mais pas pour c != c++

Sinon:

-- imagine une architecture où sizeof(int)=1048576 et où le compilo parallélise automatiquement, y aura un core qui sera en train d'écrire n'importe quoi dans c pour l'incrémenter, alors que l'autre sera en train d'essayer de comprendre ce qu'il y a dans c et se retrouvera avec une version corrompue de c ^^

Je l'imagine mal, très mal. Tu peux détailler une architecture où pour calculer "c != c++" il fait du multicore ?

31

PpHd (./30) :
Sinon:

-- imagine une architecture où sizeof(int)=1048576 et où le compilo parallélise automatiquement, y aura un core qui sera en train d'écrire n'importe quoi dans c pour l'incrémenter, alors que l'autre sera en train d'essayer de comprendre ce qu'il y a dans c et se retrouvera avec une version corrompue de c ^^

Je l'imagine mal, très mal. Tu peux détailler une architecture où pour calculer "c != c++" il fait du multicore ?

c'est complètement irréaliste, mais tu vois bien l'idée... de toute façon dans les architectures actuelles il n'y a pas de notion ni d'entier invalide (parce que chaque valeur correspond à un entier, ie UINT_MAX+1 = 1<<sizeof(int)*CHAR_BITS) ni d'entier corrompu (parce que les lectures/écritures sont atomiques, en tout cas pour les int), mais ça ne veut pas dire que le compilo ne peut pas exploiter cette information pour mieux optimiser ^^ (je crois que j'avais posté un exemple de ça dans un topic y a qqs mois)

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

32

Je connais des archi qui possèdent cette notion (entier invalide). Si on le lit avant d'écrire, ca déclenche une exception.

33

j'ai bien dit "actuelles" ^^ ça existe sur x86/ppc/arm/mips/sparc/itanium/... ?

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

34

Non. Pas que je sache.

35

Edited_855

36

faudrait trouver les propriétés du projet qui changent entre la version crée avec vc6 et celle crée avec vc2005
avatar

37

Il doit falloir changer la version du runtime a utiliser (dans les propriété du projet) comme avec VC6 on peu changer de msvcrt.dll a crt.dll
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.