| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I noticed that if we gave Ident a "qualifier" method which is
always EmptyTree, a whole bunch of code could be simplified.
A transparent subclass of Apply which preserves the source
level "new" a little longer than never.
Since productPrefix is tied up in reification - and oh I
detest this "String"-based programming, we shouldn't have to
wait until everyone learns this independently to change it -
I added "printingPrefix" to Tree, which defaults to
productPrefix but can be changed without breaking reify.
|
|
|
|
|
|
|
|
| |
* +: does head/tail decomposition on any Seq
* :+ does init/last decomposition on any Seq
* Both preserve specific Seq types.
Review by @odersky
|
|
|
|
|
|
|
|
| |
And un-overabstracting it a bit. When a method takes four parameters
in two parameter lists, one of which is a closure acting on a tuple, and
it turns out there are a total of three call sites and they all pass
identical values for the first three parameters, it may be time to
brush up on your YAGNI.
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
'acruise/t1118', 'hubertp/issue/5572', 'hubertp/topic/nightly-checkinit', 'axel22/feature/pc-ctrie', 'jsuereth/master-version-fixin' and 'axel22/feature/checkinit-transient' into develop
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Conflicts:
build.xml
tools/get-scala-revision.bat
|
| |_|_|/
|/| | | |
|
| | | | |
|
| |_|/
|/| | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
* Use new-style deprecation annotations
* Slightly less cutesy test text
* Move t1118.scala to the right directory
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
(Looks like there is more range position breakage yet, but
this gets the outermost layer.)
Channeling my struggles into a slightly easier future.
% scalac -Ypos-debug -d /tmp ./src/library/scala/Predef.scala
./src/library/scala/Predef.scala:222: warning: Positioned tree has unpositioned child in phase extmethods
def x = __resultOfEnsuring
^
parent: #7109 line 222 Select // (value __resultOfEnsuring in class Ensuring)
child: #7108 Ident // (value $this)
./src/library/scala/Predef.scala:258: warning: Positioned tree has unpositioned child in phase extmethods
def x = __leftOfArrow
^
parent: #7280 line 258 Select // (value __leftOfArrow in class ArrowAssoc)
child: #7279 Ident // (value $this)
two warnings found
Or try this to really see some output:
% scalac -Yrangepos -Ypos-debug
|
|\ \ \
| | |/
| |/|
| | | |
'lrytz/relativeLinks' into develop
|
| | | |
|
| |\ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
lib/scala-compiler.jar.desired.sha1
lib/scala-library-src.jar.desired.sha1
lib/scala-library.jar.desired.sha1
src/compiler/scala/reflect/internal/Definitions.scala
src/compiler/scala/reflect/internal/Symbols.scala
src/compiler/scala/tools/nsc/Global.scala
src/compiler/scala/tools/nsc/transform/Constructors.scala
src/compiler/scala/tools/nsc/transform/Erasure.scala
src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala
src/compiler/scala/tools/nsc/typechecker/Contexts.scala
src/compiler/scala/tools/nsc/typechecker/RefChecks.scala
src/compiler/scala/tools/nsc/typechecker/SyntheticMethods.scala
src/library/scala/Function0.scala
src/library/scala/Function1.scala
src/library/scala/Function10.scala
src/library/scala/Function11.scala
src/library/scala/Function12.scala
src/library/scala/Function13.scala
src/library/scala/Function14.scala
src/library/scala/Function15.scala
src/library/scala/Function16.scala
src/library/scala/Function17.scala
src/library/scala/Function18.scala
src/library/scala/Function19.scala
src/library/scala/Function2.scala
src/library/scala/Function20.scala
src/library/scala/Function21.scala
src/library/scala/Function22.scala
src/library/scala/Function3.scala
src/library/scala/Function4.scala
src/library/scala/Function5.scala
src/library/scala/Function6.scala
src/library/scala/Function7.scala
src/library/scala/Function8.scala
src/library/scala/Function9.scala
test/files/codelib/code.jar.desired.sha1
test/files/neg/anyval-children-2.check
test/files/run/programmatic-main.check
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
as errors. Fixed erasure scheme.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
new STARR!
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
test/files/run/Meter.scala
|
| | | | |
|
| | | | |
|
| | | | |
|
| | |\ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Conflicts:
src/compiler/scala/tools/nsc/Global.scala
test/files/run/programmatic-main.check
|
| | |\ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Conflicts:
src/compiler/scala/reflect/internal/Definitions.scala
src/compiler/scala/tools/nsc/typechecker/Namers.scala
src/library/scala/AnyVal.scala
test/files/run/primitive-sigs-2.check
test/files/run/t4172.check
test/files/scalap/abstractClass/result.test
test/files/scalap/abstractMethod/result.test
test/files/scalap/caseClass/result.test
test/files/scalap/cbnParam/result.test
test/files/scalap/classPrivate/result.test
test/files/scalap/classWithExistential/result.test
test/files/scalap/classWithSelfAnnotation/result.test
test/files/scalap/covariantParam/result.test
test/files/scalap/implicitParam/result.test
test/files/scalap/paramClauses/result.test
test/files/scalap/paramNames/result.test
test/files/scalap/sequenceParam/result.test
test/files/scalap/simpleClass/result.test
test/files/scalap/traitObject/result.test
test/files/scalap/typeAnnotations/result.test
test/files/scalap/valAndVar/result.test
test/files/scalap/wildcardType/result.test
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
ScalaObject. Undoing wrong fix in ExtensionMethods.
|
| |\ \ \ \ \ |
|
| | |\ \ \ \ \
| | | |/ / / /
| | |/| | | /
| | | | |_|/
| | | |/| |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Conflicts:
lib/scala-compiler.jar.desired.sha1
lib/scala-library-src.jar.desired.sha1
lib/scala-library.jar.desired.sha1
src/compiler/scala/reflect/internal/Definitions.scala
src/compiler/scala/reflect/internal/Importers.scala
src/compiler/scala/reflect/internal/Symbols.scala
src/compiler/scala/reflect/internal/Trees.scala
src/compiler/scala/reflect/internal/Types.scala
src/compiler/scala/tools/nsc/Global.scala
src/compiler/scala/tools/nsc/transform/Erasure.scala
src/compiler/scala/tools/nsc/transform/LiftCode.scala
src/compiler/scala/tools/nsc/transform/UnCurry.scala
src/compiler/scala/tools/nsc/typechecker/RefChecks.scala
src/compiler/scala/tools/nsc/typechecker/Typers.scala
test/files/run/programmatic-main.check
test/files/speclib/instrumented.jar.desired.sha1
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
-- traits can extend Any, AnyRef, or AnyVal
-- classes can extend AnyRef or AnyVal but not Any.
This breaks reflection for the moment as it smuggles AnyVal so far
downstream that it's reflecting its way into bytecode (or something)
but the following test case goes five for six as anticipated.
trait Foo1 extends Any
trait Foo2 extends AnyVal
trait Foo3 extends AnyRef
class Bar1 extends Any // fail
@inline class Bar2 extends AnyVal
class Bar3 extends AnyRef
Eliminated various hijinx from definitions.
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Working on type printing logic.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
"This too shall pass."
|
| | | | | | |
|
| | |\ \ \ \
| | | |_|/ /
| | |/| | | |
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Fail compile if AnyVal is inherited by a trait, a non-@inline
class, or a class with an AnyRef parent somewhere. Added tests.
Added logging, like
[log extmethods] Inline class class Bippy spawns extension method.
Old: def getClass: Class[_ <: Bippy]
New: final def extension$getClass($this: Bippy): Class[_ <: Bippy]
Fixed what I hope was a bug in ExtensionMethods where the original
method params were dropped.
Since adding a NonNull parent was also inflicting an AnyRef on AnyVal
subclasses, suppressed that for those. Had the bright idea that AnyVal
could extend NotNull. It doesn't seem to accomplish much, but then,
I don't think NotNull accomplishes much. Still, maybe it's time to
restrict the ways one can use AnyVal so one can't do this:
scala> var x: AnyVal = _
x: AnyVal = null
|
| | | | | | |
|
| | |\ \ \ \ |
|
| | | | | | | |
|
| | |\ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Temporarily removed getClass from AnyVal to get build going.
Disabled anyval-childen test.
Fixed some other build problems.
Implemented step 1 + 2 of inline classes proposal.
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Hacks here and there to allow them to survive at least
to erasure. Since nothing is done with them there yet, they
inevitably crash and burn a little ways beyond that.
|
|/ / / / / / / |
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | | |
'axel22/feature/pc-execution-contexts' into develop
|
| | |_|_|_|/ /
| |/| | | | | |
|