-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Type is simplified too much before being passed to an implicit macro #17544
Comments
…t fail because of scala/scala3#17544 Add `removeIntersectionTautologies` and `removeUnionTautologies` methods to `LightTypeTag` Ensure at type level that IntersectionReference and UnionReference can't be nested. Fix maybeUnion not removing Nothing from unions and not widening to top types
…t fail because of scala/scala3#17544 (#393) * Try to unify Scala 2 and 3 handling of tautological intersections, but fail because of scala/scala3#17544 Add `removeIntersectionTautologies` and `removeUnionTautologies` methods to `LightTypeTag` Ensure at type level that IntersectionReference and UnionReference can't be nested. Fix maybeUnion not removing Nothing from unions and not widening to top types * Fix Scala 2 build * Fix Scala 2.11 build * Fix Scala 2.12 build * Fix mima error on 2.12
These types are equivalent ( |
@bishabosha |
could you benchmark this slow path in "typical" use cases? |
Compiler version
3.3.0-RC6 and 3.2.2
Minimized code
Output
Expectation
The type received on the macro side differs when the macro is invoked implicitly versus when the macro is invoked explicitly – expected to receive the same type tree in both cases.
The text was updated successfully, but these errors were encountered: