Skip to content

Fix #5486: Constant-fold types in TypeAssigner #5506

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

Merged
merged 1 commit into from
Nov 25, 2018

Conversation

smarter
Copy link
Member

@smarter smarter commented Nov 23, 2018

To be consistent we also need to do it in TreeUnpickler and
TypedTreeCopier because they don't use TypeAssigner for Select nodes.

The main reason for this change is that it ensures that the pickled and
unpickled trees have the same constant types, but it also means that
inlined trees can get more precise types as witnessed by the added
inline-constfold.scala test

@smarter

This comment has been minimized.

@dottybot

This comment has been minimized.

@dottybot

This comment has been minimized.

To be consistent we also need to do it in TreeUnpickler and
TypedTreeCopier because they don't use TypeAssigner for Select nodes.

The main reason for this change is that it ensures that the pickled and
unpickled trees have the same constant types, but it also means that
inlined trees can get more precise types as witnessed by the added
inline-constfold.scala test
@smarter
Copy link
Member Author

smarter commented Nov 23, 2018

test performance please

@dottybot
Copy link
Member

performance test scheduled: 2 job(s) in queue, 1 running.

1 similar comment
@dottybot
Copy link
Member

performance test scheduled: 2 job(s) in queue, 1 running.

@dottybot
Copy link
Member

Performance test finished successfully:

Visit http://dotty-bench.epfl.ch/5506/ to see the changes.

Benchmarks is based on merging with master (9a9aa31)

@odersky odersky merged commit 1c03333 into scala:master Nov 25, 2018
@allanrenucci allanrenucci deleted the fix-constfold branch November 25, 2018 19:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants