| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |/
| |/|
| | |
| | |
| | | |
Dotty treats trait and class constructors as returning the class.
But scalac uses Unit for the return type of trait init methods.
|
|\ \ \
| | | |
| | | | |
Neg tests: remove xerror parameter from neg tests (#1110)
|
| | | | |
|
| | | | |
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Rename AllFlags to AnyFlags
|
| |/ /
| | |
| | |
| | |
| | |
| | | |
`membersBasedOnFlags(requiredFlags = AnyFlags, excludedFlags = ...)` is
easier to understand than
`membersBasedOnFlags(requiredFlags = AllFlags, excludedFlags = ...)`
|
|\ \ \
| | | |
| | | | |
Change isCompanionNeeded
|
| | | |
| | | |
| | | |
| | | | |
Brings time to compile stdlib down from 185s to 44s.
|
| | |/
| |/|
| | |
| | |
| | | |
Print a phase after it has run, together with the time
it needs. Useful to locate performance problems in transforms.
|
|\ \ \
| |_|/
|/| | |
Special case pattern matching against abstract types with class tags
|
| | | |
|
| | |
| | |
| | |
| | | |
We do not want to do implicit search during tree checking.
|
| | |
| | |
| | |
| | | |
Add special case when pattern matching against an abstract type that comes with a class tag
|
| | |
| | |
| | |
| | |
| | | |
Goal: Make implementation easier to understand. Prepare the ground for
special-casing of typetagged patterns.
|
| | | |
|
| | |
| | |
| | |
| | | |
Now subsumed by functionality in Typer.
|
| | |
| | |
| | |
| | |
| | | |
Make use of Definitions as the repository for
standard symbols in Predef.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Context bounds did not make it before into secondary
constructors. Now the evidence parameters generated
by context bounds get copied into secondary constructors.
Without this fix, scala.collection.immutable.PagedSeq fails
to compile in new classtag scheme.
|
| | |
| | |
| | |
| | |
| | | |
If a classtag for `T` is available, a classtag
for `Array[T]` can also be generated.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Now diagnoses missing ClassTags of abstract types
as implicit failures.
Also: Simpler API of tpd.clsOf.
|
| | |
| | |
| | |
| | |
| | | |
Tests failures were caused by previous incomplete implementation
of classTag.
|
|\ \ \
| | | |
| | | | |
Build.scala: increase Jenkins max heap from 1.1G to 1.3G
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This should be safe now that run tests do not take so much memory
anymore (cf #1033 and #1076).
It would be even better if we could figure out why we're using so much
memory, but that's less important than avoiding spurious test failures.
|
| | |/
| |/| |
|
|\ \ \
| | | |
| | | | |
Fix `bin/dotc` checkjar of wrong project
|
| |/ / |
|
|\ \ \
| |/ /
|/| | |
Make Types#membersBasedOnFlags safer and faster
|
|/ /
| |
| |
| | |
By filtering excluded flags earlier, we avoid forcing some denotations.
|
|\ \
| | |
| | | |
Add a `dotty-interfaces` package
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We introduce a new entry point for the compiler in
`dotty.tools.dotc.Driver`:
```
def process(args: Array[String], simple: interfaces.SimpleReporter,
callback: interfaces.CompilerCallback): interfaces.ReporterResult
```
Except for `args` which is just an array, the argument types and return
type of this method are Java interfaces defined in a new package called
`dotty-interfaces` which has a stable ABI. This means that you can
programmatically run a compiler with a custom reporter and callbacks
without having to recompile it against every version of dotty: you only
need to have `dotty-interfaces` present at compile-time and call the
`process` method using Java reflection.
See `test/test/InterfaceEntryPointTest.scala` for a concrete example.
This design is based on discussions with the IntelliJ IDEA Scala plugin
team. Thanks to Nikolay Tropin for the discussions and his PR
proposal (see #1011).
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- Rename Diagnostic#msg to message, this is nicer for a public API
- Rename SourceFile#lineContents and SourcePosition#lineContents
to lineContent, the former is not grammatically correct.
- Add some convenience methods to SourcePosition.
|
|\ \ \
| |/ /
|/| | |
Upgrade sbt to 0.13.11 and scalastyle-sbt-plugin to 0.8.0
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| | |
Upgrading sbt will allow us to experiment with bootstrapping
using sbt since 0.13.11 is the first release that supports building
with dotty (see https://github.com/smarter/dotty-bridge).
Upgrading scalastyle-sbt-plugin allows us to remove the workaround for
https://github.com/scalastyle/scalastyle/issues/156
|
|\ \
| | |
| | | |
Fix FatalError's constructor to forward `msg` to super.
|
| | | |
|
|/ /
| |
| |
| |
| | |
Previously, getMessage() always returned `null`, causing NPEs
when trying to report a FatalError.
|
|\ \
| | |
| | | |
Modernize and clean up the build.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Settings `in Global` are moved to Build.settings. Otherwise they
are added *twice* in every project.
Project definitions use the `project` macro rather than the
`Project()` factory, as is the customary notation since sbt
0.13. The `Defaults.coreDefaultSettings` is therefore dropped.
The coding style of project definitions is adapted to the style
shown in sbt documentations.
|
|\ \ \
| | | |
| | | | |
ConsoleReporter: handling of non-sensical messages is now reusable
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This is now handled by a separate trait HideNonSensicalMessages that can
be mixed in, similar to UniqueMessagePositions. This way we'll be able
to reuse this functionality for other kind of Reporters.
This also means that we don't need `doReport` to return a Boolean
anymore, so we change it to return a Unit as it did before
065a0026924f722e9844c8e314180bb4cebca236
|
|/ / /
| | |
| | |
| | |
| | |
| | | |
Break it out from Reporter and eliminate all dependencies
to Context. This is done so that Diagnostics can be part
of a public and minimal compiler API.
|
|\ \ \
| | | |
| | | | |
Do not create companions that will be dropped later.
|
| | | | |
|
| | | | |
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fix blocker bug reported in #1114
I dislike this fix as now phase needs to know in advance
if it will ever need a companion for the class.
On the bright side, this change makes it clear
which phases need companions
|
|\ \ \
| | | |
| | | | |
Value classes: add support for private[this] parameter
|
| | | | |
|
| | | | |
|