| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Exploit SI-6446 fix to move old pending tests for plugins to the
active pool.
Also, nuance the partest runner to allow the compiler to crash
with a FatalError if a check file is present.
Some of the plugin tests make phase assembly throw.
One of the legacy tests was moved back to pending:
There seems to be a race for who shall be deemed truly dependent.
Back to pending for you!
apm@mara:~/projects/snytt/test$ ./partest files/neg/t7494-cyclic-dependency/
Selected 1 tests drawn from specified tests
> starting 1 test in neg
ok 1 - neg/t7494-cyclic-dependency
1/1 passed (elapsed time: 00:00:04)
Test Run PASSED
apm@mara:~/projects/snytt/test$ ./partest files/neg/t7494-cyclic-dependency/
Selected 1 tests drawn from specified tests
> starting 1 test in neg
!! 1 - neg/t7494-cyclic-dependency [output differs]
> 0/1 passed, 1 failed in neg
>>>>> Transcripts from failed tests >>>>>
> partest files/neg/t7494-cyclic-dependency
% scalac t7494-cyclic-dependency/ThePlugin.scala
% scalac t7494-cyclic-dependency/sample_2.scala
error: Cycle in compiler phase dependencies detected, phase cyclicdependency1 reacted twice!
% diff files/neg/t7494-cyclic-dependency-neg.log files/neg/t7494-cyclic-dependency.check
@@ -1 +1 @@
-error: Cycle in compiler phase dependencies detected, phase cyclicdependency1 reacted twice!
+error: Cycle in compiler phase dependencies detected, phase cyclicdependency2 reacted twice!
0/1 passed, 1 failed (elapsed time: 00:00:04)
Test Run FAILED
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The old behavior was that Plugin.loadAllFrom took a distinct
list of plugin locations.
The broken behavior incorrectly punted to the pruning
algorithm in Plugins.loadPlugins$pick.
The new behavior is to distinctify the list of class names
to load.
This is more robust; under the old scheme, specifying the
continuations.jar under two file names would fail as
described in the ticket.
Pruning a plugin by disabling (-Xplugin-disable) or because
it steps on someone else's phase name suffers the same
defect. There is no way to tell the plugin it has been
benched. And you know that global I gave you? Can I
have it back?
|
|\
| |
| | |
Revert deprecations that break SBT
|
| |
| |
| |
| |
| |
| | |
These are still used in SBT 0.13.0-M2.
This is a partial revert of ac990c1bc.
|
| |
| |
| |
| |
| |
| |
| | |
This reverts commit 7e9c21ffd38711c23f89b5650cc5a32cafe4cd20.
This is still used by SBT; we'll give it a touch longer
to switch to Murmur3.
|
|\ \
| |/
|/| |
SI-7482 Don't cook raw types after erasure.
|
| | |
|
|\ \
| | |
| | | |
This is a cleanup of scaladoc code.
|
| | |
| | |
| | |
| | |
| | | |
Instead only cache direct subclasses and compute all known subclasses
as a transitive closure.
|
| | |
| | |
| | |
| | | |
Also remove private setting not used anymore.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It fixes the following inefficiences or code style violations:
- Explicit asInstanceOf calls.
- Boxing symbols instead of using plain NoSymbol.
- Matching `this` instead of late-binding.
|
|\ \ \
| |_|/
|/| | |
SI-6815 untangle isStable and hasVolatileType
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`Symbol::isStable` is now independent of `Symbol::hasVolatileType`,
so that we can allow stable identifiers that are volatile in ident patterns.
This split is validated by SI-6815 and the old logic in RefChecks,
which seems to assume this independence, and thus I don't think ever worked:
```
if (member.isStable && !otherTp.isVolatile) {
if (memberTp.isVolatile)
overrideError("has a volatile type; cannot override a member with non-volatile type")
```
Introduces `admitsTypeSelection` and `isStableIdentifierPattern` in treeInfo,
and uses them instead of duplicating that logic all over the place.
Since volatility only matters in the context of type application,
`isStableIdentifierPattern` is used to check patterns (resulting in `==` checks)
and imports.
|
| | | |
|
|\ \ \
| | | |
| | | | |
SI-6406 Restore deprecated API
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The original patch for SI-6406 was intended for 2.10 but during
those volatile weeks of early autumn, it missed the boat.
A deprecated method was incorrectly tagged at 2.10 and later
removed; this restores the method and its test, and resets
the deprecation clock to 2.11.
The deprecation tool should confirm that changes occur on the
git timeline as claimed.
|
|\ \ \ \
| | | | |
| | | | | |
SI-3943 Test case for already-fixed Java interop bug
|
| | | | |
| | | | |
| | | | |
| | | | | |
Confirmed that this was fixed in edee27f59.
|
|\ \ \ \ \
| |_|_|/ /
|/| | | | |
SI-7469 Remove @deprecated scala.util.logging
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
SI-7476 Add documentation to GenericTraversableTemplate
|
| | |/ /
| |/| | |
|
|\ \ \ \
| | | | |
| | | | | |
Fix formatting for couple of scaladocs in the compiler
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Source code on scaladoc for the virtual pattern matcher was not being
correctly identified as such. Also, I had to use an html code tag instead
of backticks when referring to the __match identifier, otherwise the
double underscore would be treated as start-of-underline wiki markup.
|
|\ \ \ \
| | | | |
| | | | | |
SI-7469 Make @deprecated elems in scala.concurrent private[scala]
|
| |/ / /
| | | |
| | | |
| | | | |
They can't be removed yet because scala.actors depends on it.
|
|\ \ \ \
| | | | |
| | | | | |
SI-7469 Remove deprecated elements in s.u.parsing.combinator
|
| |/ / / |
|
|\ \ \ \
| | | | |
| | | | | |
SI-7469 Remove @deprecated MurmurHash elements
|
| |/ / / |
|
|\ \ \ \
| | | | |
| | | | | |
makes sense of implicit macros! now in master
|
| | | | |
| | | | |
| | | | |
| | | | | |
This is a port of https://github.com/scala/scala/commit/4e64a2731d from 2.10.x.
|
| | | | |
| | | | |
| | | | |
| | | | | |
This is a port of https://github.com/scala/scala/commit/b4da864247 from 2.10.x.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This is a port of https://github.com/scala/scala/commit/8168f118c9 from 2.10.x,
with an additional change to the `enclosingImplicits` and `openImplicits` APIs,
which encapsulates tuples of `pt` and `tree` into `ImplicitCandidate`.
|
| | | | |
| | | | |
| | | | |
| | | | | |
This is a port of https://github.com/scala/scala/commit/bb73b9669a from 2.10.x.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
In January I submitted a pull request that, as I thought back then,
fixes SI-5923: https://github.com/scala/scala/commit/fe60284769.
The pull request was merged, and everyone was happy that the bug got fixed.
Unfortunately, the fix was: a) incomplete, b) broke something else,
as noticed by Miles in https://groups.google.com/d/topic/scala-internals/7pA9CiiD3u8/discussion.
Now we got a real fix in 2.10.x (https://github.com/scala/scala/commit/90ac5c4e13),
and it's my pleasure to port it to master.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
SI-6039 Harden against irrelevant filesystem details
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The symbol loader need not create and populate package
symbols merely because there is a directory somewhere.
Every package created based on the existence of a directory
should contain a classfile, either directly or indirectly.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
fix typo in comment
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| |_|_|_|_|/ /
|/| | | | | | |
AbstractFile.getDirectory does not return null when outDir is "."
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| |_|_|_|_|/ /
|/| | | | | | |
SI-7469 Remove @deprecated scala.util.parsing.ast
|
|/ / / / / / |
|
|\ \ \ \ \ \
| |_|_|_|/ /
|/| | | | | |
Limit unnecessary calls to Type#toString.
|
| | |_|/ /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Logging revealed a few thousand calls to the often expensive
Type#toString emerging from tailcalls. The error message was
being generated for all methods even though it was only issued
in rare cases (and for the particular tailrec failure which
made the call, extremely rare.)
The remaining boatload of unnecessary Type#toString calls are
much harder to fix due to the design of "AbsTypeError" and the
fact that the compiler approaches mutability like a cat approaches
a loaded gun. See SI-6149.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
SI-7432 Range.min should throw NoSuchElementException on empty range
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
For consistency, range.max and range.min should throw
NoSuchElementException on an empty range.
|