Skip to content

Add transparent types #4727

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

Closed
wants to merge 64 commits into from
Closed
Changes from 1 commit
Commits
Show all changes
64 commits
Select commit Hold shift + click to select a range
8df8f4e
Check baseclasses when determining purity of class
odersky Jun 18, 2018
8adf8db
Better purity predictions
odersky Jun 19, 2018
7d26a08
Exclude self and super constructor calls from purity warnings
odersky Jun 21, 2018
eb49110
Fix pure interface prediction for methods with default arguments
odersky Jun 23, 2018
603974e
Account for stable constrictors in ExtractAPI
odersky Jun 23, 2018
49a28de
Introduce UntypedSplice
odersky May 26, 2018
3bc3e3b
More robust scheme for untyped splices
odersky May 26, 2018
52ac21a
Make TreePickler untpd friendly
odersky May 28, 2018
444ce46
More debug options for printing
odersky May 29, 2018
1f33e9d
Add untyped types to Tasty
odersky May 29, 2018
2a2cb91
Tweaks to pickling and unpickling untyped trees
odersky May 29, 2018
798fbf7
Fix pickler printing of TERMREFin, TYPEREFin
odersky May 30, 2018
fc60ae9
Fix pickling of flags in untyped mode
odersky May 30, 2018
1a257ba
Add transparent modifier
odersky Jun 3, 2018
e95a000
Fixes to pickling and unpickling untyped trees
odersky Jun 3, 2018
5056b88
Prepare to have both inlined and transparent methods
odersky Jun 3, 2018
6762e68
Dual purpose inliner
odersky Jun 3, 2018
3617860
Two fixes to transparent handling
odersky Jun 3, 2018
89f3f93
Pretype nested transparent applications
odersky Jun 4, 2018
c70c879
Pretype nested transparent applications
odersky Jun 4, 2018
51139f0
Fix wrong owner when reading annotations.
odersky Jun 4, 2018
8d7936e
Expand test
odersky Jun 4, 2018
9e093c8
More tests
odersky Jun 5, 2018
c6616fd
Fix rebase breakage
odersky Jun 15, 2018
fdbf083
Better error position when inline call limit exceeded
odersky Jun 16, 2018
a9e9b29
Recursive transparent calls inline only in redex position
odersky Jun 16, 2018
add85ea
Fix test
odersky Jun 17, 2018
d4d6624
Reduce projections of data type fields in inliner
odersky Jun 18, 2018
8128902
Check baseclasses when determining purity of class
odersky Jun 18, 2018
244250e
Replace inlined pure constant expressions by literals
odersky Jun 19, 2018
86517af
Add neg test
odersky Jun 19, 2018
a736ea9
Allow to project on private fields
odersky Jun 20, 2018
8e5c8b4
Don't forget bindings in projections.
odersky Jun 20, 2018
f5a3b2e
Inline transparent methods even if result type does not match
odersky Jun 21, 2018
fe8870e
Don't constrain result type of inlineable transparent methods
odersky Jun 21, 2018
c36911e
Remove test
odersky Jun 21, 2018
809ab6e
Take parents of class into account when determining NoInits flags
odersky Jun 23, 2018
7f08890
Fix ErrorMessagesTest
odersky Jun 23, 2018
be53b5b
Don't drop impure arguments when reducing projections
odersky Jun 23, 2018
bf290ca
Fix: Don't drop impure arguments when reducing projections
odersky Jun 23, 2018
bccac5e
Update check file
odersky Jun 23, 2018
a60d1c2
Exclude memebrs of Predef from implicit inline environment
odersky Jun 25, 2018
43f276c
Allow types applied to terms in syntax and parser
odersky Jun 26, 2018
f64241c
Syntax for computed type definitions
odersky Jun 26, 2018
06dbeae
Drop unused HigherKinded flag
odersky Jun 27, 2018
81950ef
Coomputed type defs have a TypeBounds as declared result type.
odersky Jun 27, 2018
c9f7535
Add HKTermLambdas
odersky Jun 28, 2018
34ac63c
Make `Transparent` a common flag
odersky Jun 28, 2018
d5619ae
Make Term Lambda parameters distribute into bounds
odersky Jun 28, 2018
de2b06a
First stab at type methods
odersky Jun 28, 2018
0ec4d98
Implement pickling and unpickling of computed types
odersky Jun 29, 2018
486f412
Delete ErrorMessageTest
odersky Jun 29, 2018
55bac27
Fixes to allow for generic transparent type devfinitions
odersky Jun 29, 2018
6be4781
Make Apply a Term- or Type-Tree
odersky Jun 29, 2018
ca30494
Make hole reading context-independent
odersky Jun 29, 2018
bc73cd1
Tasty: Have a tpt form for Apply as well as TypeApply
odersky Jun 30, 2018
96c1d22
Drop AppliedTypeTree
odersky Jun 30, 2018
9a545e5
Adapt Namer.checkFlags to type defdefs
odersky Jun 30, 2018
85945b0
Make `toLambda` not force too much
odersky Jul 1, 2018
703edea
Handle HKTermLambdas in TypeComparer
odersky Jun 30, 2018
e965128
Handle HKTermLambdas in Printer
odersky Jun 30, 2018
ff14afa
Handle HKTermLambdas in Tasty and TastyImpl
odersky Jun 30, 2018
cf82715
Disallow curried type methods
odersky Jun 30, 2018
6e43b8a
Fix printing of method types
odersky Jul 1, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Make Transparent a common flag
  • Loading branch information
odersky committed Jun 28, 2018
commit 34ac63c2e6ab9f85838cad7a4a23b68bd93f1f5d
2 changes: 1 addition & 1 deletion compiler/src/dotty/tools/dotc/core/Flags.scala
Original file line number Diff line number Diff line change
Expand Up @@ -364,7 +364,7 @@ object Flags {
final val DefaultMethod = termFlag(38, "<defaultmethod>")

/** Labelled with `transparent` modifier */
final val Transparent = termFlag(39, "transparent")
final val Transparent = commonFlag(39, "transparent")

/** Symbol is an enum class or enum case (if used with case) */
final val Enum = commonFlag(40, "<enum>")
Expand Down