Remove all dict/vec/varray/darray/shape/tuple implicit conversions in assert path
fredemmott opened this issue · comments
Fred Emmott commented
We're expecting to make darray an alias for dict, varray an alias for vec, and swap the backing store for shapes and tuples to dict/vec respectively in the next 2-8 weeks. Once that has happened in HHVM:
- this implicit conversion should be removed
- we should start asserting that a successful assert returns exactly the same value, just with a different type
Fred Emmott commented
- whenever the HHVM default changes, we should make sure there is a type-assert release that works with it and still has the implicit conversions - then bump the major version and resolve this issue
- we probably want an intermediate release (or option/global flag) to enable notices when implicit conversions happen
Lexidor Digital commented
We are in a post hadva world. This issue looks very similar to #61.
Lexidor Digital commented
Sorry, that is not quite true. The old array typed specs are still around. The structural types have been modernized already.