| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
All the credit for fixing magical constants in the encoding algorithm goes to @magarciaEPFL.
This time provided a test case that exercises GenASM.
|
|\
| |
| | |
SI-5751 cleans up toolboxes for the release
|
| |
| |
| |
| |
| |
| |
| |
| | |
Removes the `freeTypes` parameters on `typeCheckExpr` and `runExpr`,
since we now have public `substituteTypes` on both trees and types.
Also implements long-awaited `inferImplicitValue` and `inferImplicitView`
(thanks to Miles Sabin for nudging me!)
|
|\ \
| | |
| | | |
I actually managed to hit the limit of Scala signature annotation not fi...
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
fitting into a single string (high five everyone) and entered the undisovered region of arrEncode in GenASM.
arrEncode returns Array[String] so asm.AnnotationWriter is not going to like it.
Already discussed with @magarciaEPFL but please review again.
|
|\ \ \
| |/ /
|/| | |
Added more variants to achieve getLinkPos
|
| |/
| |
| |
| | |
getLinkPos is known to be flakey. This commit tries some variants and logs what failed.
|
|\ \
| |/
|/| |
Fixed maddening "..." lately in printed types.
|
| |
| |
| |
| |
| |
| | |
I screwed around with type printing for a long time and now I have
to be done, so I suggest we accept the imperfection in here for now
because it's still way ahead of "..." as types go.
|
| |
| |
| |
| |
| |
| | |
This must have been me when I eliminated some of the
remaining distinction between TypeRef(_, moduleClass, Nil) and
SingleType(_, moduleClass). Sorry I didn't track it down sooner. Review by anyone who is around because this is overdue.
|
|\ \
| | |
| | | |
SI-5866 Support casting null to value classes
|
| | |
| | |
| | |
| | | |
The fix now supports null.asInstanceOf[C] where C is a value class that wraps a primitive type.
|
|\ \ \
| | | |
| | | | |
ClassTag.Nothing now throws an exception
|
| |/ /
| | |
| | |
| | |
| | | |
Nothing is a bottom type, so it doesn't make much sense for it to have
a meaningful erasure (ClassTag.Nothing.runtimeClass).
|
|\ \ \
| | | |
| | | | |
Fixed SI-5031. Only consider classes when looking for companion class.
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | | |
sym.effectiveOwner revealed this piece of inconsistency. companionModule
is fine because similar check is there already.
Review by @paulp.
|
|\ \ \
| | | |
| | | | |
Closes SI-5882
|
| | | |
| | | |
| | | |
| | | | |
I changed the SIP and added a test.
|
| | | |
| | | |
| | | |
| | | | |
I have added a restriction that value classes may not contain inner classes or objects. This makes sense as the "outer" field of any such classes or objects would be ephemeral, with surprising results. SIP-15 has been changed accordingly.
|
|\ \ \ \
| | | | |
| | | | | |
SI-2038 make pt fully-defined when typing Typed
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
dropExistential turns existentials in the expected type (pt) that's passed to `typed`
into `BoundedWildcardType`s, but those should not end up in trees
when typing a `Typed` node, we didn't check for the type being fully defined (`isFullyDefined`)
(and thus did not make it fully defined by turning these BWTs into existentials again using `makeFullyDefined`)
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Remove resolveOverloaded
|
| | |_|_|/
| |/| | |
| | | | |
| | | | | |
It was decided to remove it until the next release
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
Fixed SI-5603. Early definitions now get transparent positions.
|
| | |_|/
| |/| |
| | | |
| | | |
| | | |
| | | | |
This includes a fix for a minor problem described in #594 -
ensureNonOverlapping still focuses on default position when outside of early defs.
Review by @dragos, @odersky.
|
|\ \ \ \
| | | | |
| | | | | |
Avoids loading scala.package and scala.reflect.package from source if a ...
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
classfile exists.
We know that loading these packages from source leads to compilation errors. To reproduce: Update scala.reflect.package, make sure it is on the source path and recompile anything using it. You will get a number of errors having to do with ClassTags and macro expansions. With the patch, these errors go away because the package is not loaded as long as a classfile exists.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Closes SI-5878
|
| | |_|_|/
| |/| | |
| | | | |
| | | | | |
We need to impose an additional rule on value classes: They may not unbox directly or indirectly to themselves.
|
|\ \ \ \ \
| |_|_|/ /
|/| | | | |
IDE improvements, with particular focus on making worksheets work.
|
| | | | |
| | | | |
| | | | |
| | | | | |
Debug changes
|
| | | | |
| | | | |
| | | | |
| | | | | |
Adds a raw string interpolator raw"..." which does not do any escape sequence processing.
|
| | | | |
| | | | |
| | | | |
| | | | | |
Adds method askForResponse which returns a response immediately instead of waiting for a result. That way, one can wait for an ask's result using a timeout.
|
| | | | |
| | | | |
| | | | |
| | | | | |
Code instrumentation needs to see a consistent snapshot of a source file. To achieve that we disable interrupts during getInstrumented.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
To try it out:
run "instrument worksheet" as usual in the REPL. Worksheet needs to have enclosing object definition. Say it is named "Obj".
This will generate a file Obj$instrumented. You can compile that file separately and run it using Java. It should reproduce itself.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
`ScriptSourceFile` should not hard-code `OffsetPosition`.
|
| | |_|/ /
| |/| | |
| | | | |
| | | | | |
The presentation compiler should support script source files as well, but it needs range positions. This commit
fixes an oversight when `RangePosition` was introduced.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Partest instrumentation fixes
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The previous implementation was wrong because it
would always enable profiling after call to
`Instrumenation.getStatistics` method. Now we are
checking the profiling status and enable it again
only when it was enabled before.
Review by @phaller.
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Extend instrumenting infrastructure to instrument
classes in `instrumented` package. This is useful
because very often you need to put your classes
into non-empty package. E.g. inliner doesn't work
properly with empty package at the moment so in
order to test any behaviour we need to put classes
in some other package that is instrumented.
Added testing code for that to instrumentation
test-case.
Review by @phaller.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
SI-6140 Scaladoc infinite recursion in wiki parser
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
introduced by dc70d1b7.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Issue/4560
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Added all the known cases of failing self-types. Added tests for symbol
access (SI-4601) as well which should now be fixed for all of the same cases
as well.
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This reverts commit cb4fd65825f3c88908103e48d0d7e89d70d26c22.
Conflicts:
src/compiler/scala/tools/nsc/symtab/Types.scala
src/compiler/scala/tools/nsc/typechecker/Contexts.scala
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This reverts commit 124cf3f9cbdc582a432c13edd229ba9b8726b99f.
Conflicts:
src/compiler/scala/tools/nsc/transform/CleanUp.scala
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This reverts commit 7127d8293775905acd0d04e21d9e045b5c029261.
Conflicts:
test/files/run/t4560.scala
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Following this commit are reversions of three prior commits which
introduced difficulties of their own, plus extra tests for this
issue and SI-4601, all of which I pinched from jrudolph.
Maybe there was a good reason for some of the complicated code
related to this ticket. I took the naive position that if we avoided
generating a method call to a particular receiver if the receiver
has no such method, we would encounter fewer NoSuchMethodErrors.
I would believe one can construct a scenario which this doesn't
handle correctly, but it's hard to believe this isn't a big
improvement. Review by @jrudolph, @odersky.
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
SI-6142: warn @inline-methods ending up not inlined (rightfully or not)
|
| | |_|/ / / /
| |/| | | | | |
|