Commit 47aa75d
committed
Fully compile primitive value classes
We used to drop compilation units for primitives after frontend, but
this meant that a standard library compiled by dotty was not usable by
dotty, because the primitive value classes were missing from the
classpath: even though these classes are never loaded at runtime,
they're unpickled at compile-time.
Getting this to work required two changes: silence an error in
refchecks (see comment) and turn off some computations in mixins that
require cls.superClass to exist (primitives have no superclasses after
erasure)1 parent 2d9b3d1 commit 47aa75d
File tree
3 files changed
+12
-4
lines changed- compiler/src/dotty/tools/dotc
- transform
- typer
3 files changed
+12
-4
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
270 | 270 | | |
271 | 271 | | |
272 | 272 | | |
273 | | - | |
| 273 | + | |
274 | 274 | | |
275 | 275 | | |
276 | 276 | | |
277 | 277 | | |
278 | | - | |
| 278 | + | |
| 279 | + | |
279 | 280 | | |
280 | 281 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
86 | 86 | | |
87 | 87 | | |
88 | 88 | | |
89 | | - | |
| 89 | + | |
90 | 90 | | |
91 | 91 | | |
92 | 92 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
790 | 790 | | |
791 | 791 | | |
792 | 792 | | |
793 | | - | |
| 793 | + | |
| 794 | + | |
| 795 | + | |
| 796 | + | |
| 797 | + | |
| 798 | + | |
| 799 | + | |
| 800 | + | |
794 | 801 | | |
795 | 802 | | |
796 | 803 | | |
| |||
0 commit comments