Closed
Description
This issue is about handling an "impossible" intersection by static type checkers. We consider two cases:
It must be transformed to Never
Arguments in favor:
- @mikeshardmind argues that is unsafe.
- @gandhis1 argues not doing so creates divergent behavior between typecheckers
- @mikeshardmind argues not doing so creates divergent behavior between typecheckers in a different way in a related case
It is up to the type checker to reduce it or not
Arguments in favor:
- @erictraut argues that the conditions are complex and expensive.
- @erictraut argues in the context of reduction and normalization.
- @CarliJoy argues that there are problems caused by inconsistent typing definitions in the standard library.
(Please edit this comment. I haven't gone through the whole issue to add links to everyone's arguments.)
Metadata
Metadata
Assignees
Labels
No labels