#60 Value comparation rework

Aberto
aberto por belliash 10 meses atrás · 1 comentários

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 added the
bug
label 10 meses atrás
belliash added the
aerscript
label 10 meses atrás
likoski comentou 10 meses atrás
Proprietário

We should not compare incompatible values in general.

We should not compare incompatible values in general.
Acesse para participar desta conversação.
Sem marco
Sem responsável
2 participante(s)
Notificações
Data limite

Data limite não informada.

Dependências

Esta issue atualmente não tem dependências.

Carregando…
Ainda não há conteúdo.