Value comparation rework #60

Ouvert
créé 2019-11-02 17:31:48 +01:00 par belliash · 1 commentaire
Propriétaire

The actual value comparation implemented by PH7 Engine is trying to imitate PHP behavior. First of all, NULL < -1, and NULL == 0. Sorting is thus nondeterministic. Secondly, objects compare as greater than anything else except other objects, which they are neither less than nor greater than. Finally, comparison operators try to sort arrays, two different ways: first by length, then by elements. If they have the same number of elements but different sets of keys, though, they are non comparable.

This needs comparation mechanism to be rewritten and fixed.

The actual value comparation implemented by PH7 Engine is trying to imitate PHP behavior. First of all, NULL < -1, and NULL == 0. Sorting is thus nondeterministic. Secondly, objects compare as greater than anything else except other objects, which they are neither less than nor greater than. Finally, comparison operators try to sort arrays, two different ways: first by length, then by elements. If they have the same number of elements but different sets of keys, though, they are non comparable. This needs comparation mechanism to be rewritten and fixed.
belliash a ajouté les labels
bug
aerscript
2019-11-02 17:31:48 +01:00.
Propriétaire

We should not compare incompatible values in general.

We should not compare incompatible values in general.
Connectez-vous pour rejoindre cette conversation.
Sans jalon
Sans assignation
2 participants
Notifications
Échéance
La date d’échéance est invalide ou hors plage. Veuillez utiliser le format 'aaaa-mm-dd'.

Aucune échéance n'a été définie.

Dépendances

Aucune dépendance définie.

Référence : aerscript/Aer#60
Sans contenu.