| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|\
| |
| | |
SI-2712 Add support for partial unification of type constructors
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Debug flag to print a summary of the inliner's work
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Example output below. Note that inlining List.map fails because the
trait forwarder uses `INVOKESPECIAL` for now, will change with pr 5177.
$ cat Test.scala
class C {
def foo = Map(1 -> 'a', 2 -> 'b')
def bar(l: List[Int]) = l.map(_ + 1)
}
$ qsc -Yopt-log-inline _ -Yopt:l:classpath Test.scala
Inlining into C.foo (initially 36 instructions, ultimately 72):
- Inlined scala/Predef$ArrowAssoc$.$minus$greater$extension (8 instructions) 2 times: the callee is annotated `@inline`
Inlining into C.bar (initially 12 instructions, ultimately 12):
- Failed to inline scala/collection/immutable/List.map (the callee is a higher-order method, the argument for parameter (bf: Function1) is a function literal): The callee scala/collection/immutable/List::map(Lscala/Function1;Lscala/collection/generic/CanBuildFrom;)Ljava/lang/Object; contains the instruction INVOKESPECIAL scala/collection/TraversableLike.map (Lscala/Function1;Lscala/collection/generic/CanBuildFrom;)Ljava/lang/Object;
that would cause an IllegalAccessError when inlined into class C.
|
|\ \
| | |
| | | |
Fully qualify types in REPL generated code
|
| | | |
|
|\ \ \
| |/ /
|/| | |
Rename -Yopt to -opt, -Yopt-warnings to -opt-warnings
|
|/ /
| |
| |
| | |
Keep -Yopt-inline-heuristics and -Yopt-trace unchanged
|
|\ \
| | |
| | | |
Use full braces style in AnsiColor example
|
|/ /
| |
| |
| | |
This matches the use of ${..} in Console.
|
|\ \
| | |
| | | |
Added applyOrElse to MapLike
|
| | |
| | |
| | |
| | |
| | | |
This overrides default implementation from PartialFunction which used
both contains(x) and get(x) with getOrElse.
|
|\ \ \
| | | |
| | | | |
Fix Scaladoc link syntax on java.util.Formatter references
|
| | | | |
|
|\ \ \ \
| |/ / /
|/| | | |
SI-9522 release key reference when deleting from OpenHashMap
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This sets the key field in the hash table entry to its default value
when an entry is deleted, so as not to unexpectedly retain an object
reference, leading to a memory leak.
Also includes incidental changes to the slot location algorithm that
reduce the number of deleted entries.
|
|\ \ \
| | | |
| | | | |
SI-8044 Allow binding backquoted varid in patterns
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Allows arbitrary identifier in `X @ pat`, including
non-varids. This goes to regularity.
Users of this syntax are not likely to be confused
by the "backquoted var id is stable" rule.
Also for sequence pattern, `X @ _*`.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Previously, a varid could not be backquoted, so that it was not
possible to introduce variables with names such as `type` in a
match expression.
This commit allows backquoted varids in `case x @ _` and
`case x: Int`. In neither position is a stable id accepted,
that is, an id with leading uppercase.
Therefore, this commit merely relaxes the backquoted varid to
be taken as a normal varid in these contexts.
|
|\ \ \ \
| |_|/ /
|/| | | |
SI-9656 Distinguish Numeric with step type
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
For Range and NumericRange, toString will indicate the step
if it is not 1.
Additionally, indicate empty ranges and ranges which are not
"exact".
For a "mapped" range, used by `Range.Double`, toString
includes the underlying range and the simple type of the step
(to distinguish Double from BigDecimal).
|
|\ \ \ \
| | | | |
| | | | | |
Check left side of an assignment expression for errors; fixes SI-9781
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
`convertToAssignment` is triggered on a type error but it doesn't seem
to really care what the error is as long as the expression can be
converted to an assignment expression.
This patch fixes that by checking whether the qualifier of the selection
contains any errors before deciding to continue with the conversion.
|
|\ \ \ \
| | | | |
| | | | | |
SI-9760 Fix for higher-kinded GADT refinement
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
SI-9776 Fix type of PriorityQueue.newBuilder and improve performance
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
- Fix the return type of mutable.PriorityQueue.newBuilder to be
Builder[A, PriorityQueue[A]] rather than PriorityQueue[A].
- Improve performance of bulk inserts from O(N log N) to O(N),
primarily in the builder, ++=, and reverse. These changes
indirectly benefit the many other methods that use the builder or ++=.
- Improve performance of clone.
- Fix SI-9757 space leak in dequeue.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Improve Future documentation (+ minor code cleanups)
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
* Enhanced Scaladocs with groupings and clarifications
* traverse now runs the last step like sequence
* A few minor non-semantic changes to method implementations
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Group Console and AnsiColor entities and add usage examples
|
|/ / / / / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
- Group AnsiColor and Console members
- Add Console IO redefinition examples
- Add Console control code examples
- Add color swatches to AnsiColor
- Add AnsiColor control code examples
- Link to StdIn for reading
- Fix link syntax for java.util.Formatter
- Fix withErr method example
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
SI-9121 test case (fixed in new optimizer), SI-9179 test case
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Also adds a mising phase travel in the backend. A comment already
points out why it's necessary, but it was actually forgotten.
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
SI-9361 fixed assert allowing display of improved error message.
|
| | | | | | | | | |
|
|\ \ \ \ \ \ \ \ \
| | | | | | | | | |
| | | | | | | | | | |
SI-5463 Check .jars before using them
|
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Make broken JAR files on compiler classpath cause a fatal error
|
|\ \ \ \ \ \ \ \ \ \
| |_|_|/ / / / / / /
|/| | | | | | | | | |
Make Range.Partial a value class
|
| | | | | | | | | | |
|
|\ \ \ \ \ \ \ \ \ \
| |_|_|_|_|/ / / / /
|/| | | | | | | | | |
Clean up JUnit tests, make sure they pass without bootstrap [ci: last-only]
|
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Test classes not ending in "Test" are not executed in sbt. IntelliJ
runs them.
After this patch: 803 tests executed both in sbt and junit.
|
| | | | | | | | | | |
|
| | | | | | | | | | |
|