Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
Troll-Brain Ri1kamoua
Inscrit le: 23 Aoû 2007 Messages: 7143 Sujets: 147 Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance Médailles: 2 (En savoir plus...)
|
|
Revenir en haut |
|
|
Ayane Bot administrateur
Inscrit le: 17 Sep 2007 Messages: 2009 Sujets: 49
Médailles: 2 (En savoir plus...)
|
Posté le: 12/03/16 14:19 Sujet du message: |
|
|
Cela ne créé pas d'overflow, real est normalement stocké sous la norme IEEE 754 sur 32 bits comme pour l'entier.
Jass: | function GetFadeFromSeconds takes real seconds returns integer
if (seconds != 0) then
return R2I(128 / seconds)
else
return 10000
endif
endfunction |
_________________
|
|
Revenir en haut |
|
|
Troll-Brain Ri1kamoua
Inscrit le: 23 Aoû 2007 Messages: 7143 Sujets: 147 Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance Médailles: 2 (En savoir plus...)
|
Posté le: 12/03/16 15:00 Sujet du message: |
|
|
Ok, toujours est t'il que le résultat est inattendu. _________________
Le violet, c'est moche. |
|
Revenir en haut |
|
|
Karbok Membre actif
Inscrit le: 29 Oct 2014 Messages: 181 Sujets: 8 Spécialité en worldedit: les gauffres au nutella
|
Posté le: 12/03/16 15:26 Sujet du message: |
|
|
Je suis vraiment impressionné par tes recherche ! Mais quelque chose m'étonne : les clients ne sont pas sensés s'envoyer des checksum du jeu en permanence, ce qui nécessiterait un "vrai" client pour vérifier les desync ? _________________
Mon pseudo Battle.net : Dragonflamm |
|
Revenir en haut |
|
|
BasuraHead Ptit Nouveau
Inscrit le: 13 Fév 2016 Messages: 26 Sujets: 1 Spécialité en worldedit: Imaginer des choses que je n'implémenterais jamais
|
Posté le: 12/03/16 15:27 Sujet du message: |
|
|
Non le résultat est plutôt normal, le compilateur refuse une conversion implicite avec perte d'information. Le contraire aurait été étonnant (et peu souhaitable).
En Jass, la conversion implicite n'est permise que dans un seul cas: entier vers réel. Ce qui est étonnant c'est que cette fonction existe en premier lieu. Cela dit elle a pu passer inaperçue avant la 1.24 à cause d'un bug du compilateur, qui ne vérifiait que la dernière déclaration return d'une fonction. _________________
|
|
Revenir en haut |
|
|
Troll-Brain Ri1kamoua
Inscrit le: 23 Aoû 2007 Messages: 7143 Sujets: 147 Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance Médailles: 2 (En savoir plus...)
|
Posté le: 13/03/16 02:07 Sujet du message: |
|
|
Karbok a écrit: | Je suis vraiment impressionné par tes recherche ! Mais quelque chose m'étonne : les clients ne sont pas sensés s'envoyer des checksum du jeu en permanence, ce qui nécessiterait un "vrai" client pour vérifier les desync ? |
C'est fait en lan, et il y a bien 2 clients, même si c'est sur le même pc (2 instances de war3)
@BarusaHead :
Normal que pjass le considère comme une erreur oui, mais le "compilateur" officiel ne dit rien sans broncher, en fait ce code est légal mais foireux.
Donc il n'y a jamais eu d'erreur de vomit par l'éditeur officiel.
Et qui sait, peut être qu'auparavant le typecast real/integer implicite était possible.
Il y'a aussi la conversion implicite d'un type "fils" vers un type "parent", du style unit/handle. _________________
Le violet, c'est moche. |
|
Revenir en haut |
|
|
Ayane Bot administrateur
Inscrit le: 17 Sep 2007 Messages: 2009 Sujets: 49
Médailles: 2 (En savoir plus...)
|
Posté le: 13/03/16 08:50 Sujet du message: |
|
|
PJass a été créé pour détecter les erreurs, notamment parce qu'avant les erreurs Jass était encore moins explicite (Unexpected token at line 1); il a toujours été plus rigoureux que le moteur de warcraft 3. _________________
|
|
Revenir en haut |
|
|
|