| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| | |
Before this commit, commands such as "test" would not run anything,
which means that the JUnit tests were never run.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Before this commit, Build.scala contained:
baseDirectory in run := baseDirectory.value / "..",
The goal of this line is that when invoking the compiler using `run` or
`dotc`, the working directory is the root of the dotty project, which is
convenient for testing.
However, this line also affects the working directory of
`dotty-compiler/runPartestRunner`, but not of `dotty-compiler/test`.
The result was that `dotty-compiler/test` was broken, and fixing the
paths in the code would break `partest`.
We solve this by using a different baseDirectory when running partest.
|
| | |
|
| |
| |
| |
| |
| | |
Otherwise `packageAll` by itself as used in aliases like `partest` won't
work.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Should still perhaps move `test/dotc/tests.scala` and the others in the
same directory to a better more cohesive location. Would like to delete
the worksheets as well - but maybe they hold sentimental value...
|
| |
| |
| |
| |
| | |
The pickler doesn't unpickle to HKApply, as such - we need
to print them in their applied form.
|
| | |
|
| |
| |
| |
| | |
As indicated by the comment right above it.
|
| |
| |
| |
| |
| |
| |
| | |
It failed because two files in the same package compiled at the same
time defined respectively a class Test and an object Test. I'm guessing
this did not fail before because failure depends on the order of the
files on the command line.
|
| |
| |
| |
| |
| |
| | |
Broken since the dotty jars were removed from the JVM bootclasspath. I think
the proper solution is to use the Scala bootclasspath to pass all the
necessary jars but this will do for now.
|
| |
| |
| |
| |
| | |
It was wrongly defined before with respect to `commandLineFor` (this is
what happens when you rely on strings instead of types!)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, the tests where all in tests/pos/java-interop which means
that partest would try to run them as one single test, this failed
because some of these tests define classes with the same name. We could
fix this by putting them all in separate packages but for now it's
simple to move them to tests/pos-java-interop (they will still be run
individually as they should thanks to the `java_all` test defined in
tests.scala)
|
| |
| |
| |
| |
| |
| | |
The fix to partest to make it compile files in subdirectories means that
we're compiling more things and using more heap and has resulted in
tests failing with OutOfMemoryError. Hopefully this fixes that.
|
| |
| |
| |
| |
| |
| | |
Running `packageAll` is now required before running the tests, this
commit enforces this, by making `javaOptions` depend on `packageAll`,
this requires rewriting `packageAll` to be a task instead of a command alias.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
|/ |
|
|\
| |
| | |
Don't retain picklers until backend.
|
| |
| |
| |
| |
| |
| |
| | |
Previously only the FrontEnd got a fresh FreshNameCreator for
each run, the other phases used a global one instead. This means
that compiling the same file several times would create different
synthetic names and classes on each run.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
`initInfo` was retained in Symbols. When called from `Namer`, `initInfo` referred to
a completer, which referred to a context.
With this space leak plugged, we can now compile 1000 times core/Comments.scala (460lines)
with -Xmx400M.
There still seems to be a space leak on the order of 200KB per run, though. But that seems
to have to do with symbols, not contexts.
|
| |
| |
| |
| |
| |
| | |
The lazy val `dummyTree` acquires a type because of
copy-on-write and that type can refer via lastDenotation
to a context base.
|
| |
| |
| |
| |
| |
| | |
Re-enable context-leak detection by reverting 53cd512.
But leak detection seems to be leaky itself :-)
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
The memory footprint captured by pickler seems to be about
1/3rd of total footprint. So we gain a lot by not making this
die sooner rather than later.
|
|\ \
| |/
|/| |
Towards correct positions in TASTY types
|
| | |
|
| |
| |
| |
| |
| | |
The qualifier of a This and the mixin of a Super were names, which meant
that their positions were lost. Now they are untyped idents.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Lots of other changes to make positions work out everywhere.
One important change is that now trees can be shared, just
as types can. This change improves memory requirements (a bit)
and also makes positions in shared trees more robust.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Express them in terms PolyTypeTrees rather than having an
irregular, untyped only tparams field. This is necessary
if we want to pickle type trees instead of types, because
now the rhs of a typedef tells the whole story, so we are not
required any longer to use the info of the symbol.
|
| |
| |
| |
| |
| | |
It seems like overengineering to use different names for
poly methods in definitions and synthetic lambdas.
|
| |
| |
| |
| | |
As a side effect, avoid creating synthetic parameters in lambda abstract.
|
| |
| |
| |
| |
| |
| | |
Pick a less common name for the missing identifier. Depending
on my classpath I sometimes got `x is not a package` as an additional
error for this one.
|
| |
| |
| |
| |
| | |
If we want to pickle type trees, we need a type assigner
for RefinedTypeTree.
|
|\ \
| | |
| | | |
Fix #1648: don't define companion object for java.lang.Object
|