summaryrefslogtreecommitdiff
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
...
| * | Changed array erasure scheme to never unbox elements of inline classes.Martin Odersky2012-02-151-16/+18
| | |
| * | Changed erasure behavior of arrays to use always boxed representation.Martin Odersky2012-02-141-0/+41
| | | | | | | | | | | | | | | | | | Conflicts: test/files/run/Meter.scala
| * | Fixing problems with generation of isInstanceOf, classOf.Martin Odersky2012-02-141-0/+1
| | |
| * | Setting up things to demonstrate a swallowed type error in manifest generation.Martin Odersky2012-02-131-0/+2
| | |
| * | Added missing files from last commitMartin Odersky2012-02-133-0/+24
| | |
| * | All steps of value class proposal implemented. Most restrictions are now ↵Martin Odersky2012-02-136-24/+53
| | | | | | | | | | | | enforced. Super calls and specialized still missing.
| * | Added test case.Martin Odersky2012-02-071-0/+19
| | |
| * | Removing unnecessary AnyVal code.Paul Phillips2012-02-069-46/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ...since it works from source. The parser must be forcibly restrained from adding a bogus constructor, but other than that it's pretty much smooth sailing. To give an idea how smooth, if I change scala.Short like so: trait Bippy extends Any final class Short extends AnyVal with Bippy Then it just works, at least until the fiction is revealed. scala> def f(x: Bippy) = x f: (x: Bippy)Bippy scala> f(5) <console>:9: error: type mismatch; found : Int(5) required: Bippy f(5) ^ scala> f(5: Short) java.lang.ClassCastException: java.lang.Short cannot be cast to scala.Bippy at .<init>(<console>:9) at .<clinit>(<console>) at .<init>(<console>:11)
| * | Merge branch 'master' into topic/inlinePaul Phillips2012-02-0646-196/+1279
| |\ \ | | | | | | | | | | | | | | | | | | | | Conflicts: src/compiler/scala/tools/nsc/Global.scala test/files/run/programmatic-main.check
| * \ \ Merge remote-tracking branch 'odersky/topic/inline' into inline-remergePaul Phillips2012-02-0621-26/+26
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| | * | | Fixed a bunch of scalap check files to account for absence of ScalaObjectMartin Odersky2012-02-0619-24/+24
| | | | |
| | * | | Removing AnyVal as a source class. Removing automatic addition of ↵Martin Odersky2012-02-0612-30/+22
| | | | | | | | | | | | | | | | | | | | ScalaObject. Undoing wrong fix in ExtensionMethods.
* | | | | Merge branch 'merge-inline' of /scratch/trunk3 into developPaul Phillips2012-03-1467-174/+220
|\ \ \ \ \
| * | | | | New starr to support new fundamental laws of reality.Paul Phillips2012-03-1416-74/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | And grueling recovery from branch drift. Merges a portion (and only a portion) of topic/inline into master. The major changes which come with this merge are: AnyVal is unsealed, can be extended directly. ScalaObject is no longer with us.
| * | | | | Merge branch 'master' into merge-inlinePaul Phillips2012-03-14423-681/+9395
| |\ \ \ \ \ | | |/ / / / | |/| | | / | | | |_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | | | All tests passed... not counting scaladoc.Paul Phillips2012-02-041-21/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Disabled failing scaladoc test rather than fixing it because they're too hard to fix, even though it is almost certainly a trivial output change. (The fact that I don't know for sure that it is a trivial output change is also suboptimal.)
| * | | | A couple more checkfiles and comments.Paul Phillips2012-02-042-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I guess I have to suck up the "C with Object" here in order to get the "Array[T with Object]" I need in a different test. Now all tests pass for reals.
| * | | | Checkfile output update for AnyVal class.Paul Phillips2012-02-041-1/+4
| | | | | | | | | | | | | | | | | | | | And with that one, I believe all tests pass.
| * | | | Fixed all but one of the scalap tests.Paul Phillips2012-02-0419-21/+21
| | | | |
| * | | | Fixed specialized tests.Paul Phillips2012-02-041-1/+1
| | | | |
| * | | | Fixed scalacheck tests.Paul Phillips2012-02-041-1/+1
| | | | |
| * | | | Making AnyVal into a class instead of a trait.Paul Phillips2012-02-042-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -- 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.
| * | | | Simple test manipulating Any-derived traits.Paul Phillips2012-02-041-0/+16
| | | | |
| * | | | Updated checkfiles to subtract ScalaObject.Paul Phillips2012-02-0418-37/+26
| | | | |
| * | | | Merge branch 'master' into topic/inlinePaul Phillips2012-02-03119-24/+684
| |\ \ \ \ | | |_|/ / | |/| | |
| * | | | intermediate work towards a new starr for value classes.Martin Odersky2012-02-031-6/+6
| | | | |
| * | | | More work on inline classes.Paul Phillips2012-01-305-1/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | | | Removed obsolete checkfile.Paul Phillips2012-01-302-13/+0
| | | | |
| * | | | Merge remote-tracking branch 'odersky/topic/inline' into inlinePaul Phillips2012-01-301-1/+1
| |\ \ \ \
| | * | | | updated check file; got accidentally dropped from last commit.Martin Odersky2012-01-301-1/+1
| | | | | |
| * | | | | Merge branch 'master' into inlinePaul Phillips2012-01-307-0/+470
| |\ \ \ \ \
| * \ \ \ \ \ Merge branch 'master' into inlinePaul Phillips2012-01-305-0/+81
| |\ \ \ \ \ \ | | |_|/ / / / | |/| | | | | | | | | | | | | | | | | | | Conflicts: src/compiler/scala/reflect/internal/Definitions.scala
| * | | | | | Resinstantiating anyval-children test. Getting he complete build to run.Martin Odersky2012-01-302-0/+1
| | | | | | |
| * | | | | | Merge remote-tracking branch 'paulp/inline' into topic/inlineMartin Odersky2012-01-2913-54/+89
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| | * | | | | | Unsealed AnyVal.Paul Phillips2012-01-281-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | | | | | Merge remote-tracking branches 'soc/fix-todos' and ↵Paul Phillips2012-03-141-1/+1
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 'axel22/feature/pc-execution-contexts' into develop
| * \ \ \ \ \ \ \ Merge branch 'master' into feature/pc-execution-contextsAleksandar Prokopec2012-03-1467-21/+2221
| |\ \ \ \ \ \ \ \ | | | |_|_|_|_|/ / | | |/| | | | | |
| * | | | | | | | Fix one benchmark.Aleksandar Prokopec2012-03-061-1/+1
| | | | | | | | |
* | | | | | | | | Removed "Todo: test" where a test exists.Simon Ochsenreither2012-03-122-3/+3
| |/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Renamed t960 to a more sensible name, because SI-960 is not related to the test and I couldn't find a ticket number. - Some minor fixes to @deprecated like switched or missing versions.
| | | | | | | |
| \ \ \ \ \ \ \
*-. \ \ \ \ \ \ \ Merge remote-tracking branches 'adriaanm/ticket/5189' and ↵Paul Phillips2012-03-115-1/+82
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'jsuereth/better-starr-flow' into develop
| * | | | | | | | | SI-5189 fixed: safe type infer for constr patternAdriaan Moors2012-03-093-1/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | several fixes to the standard library due to - the safer type checker this fix gives us (thus, some casts had to be inserted) - SI-5548 - type inference gets a bit more complicated, it needs help (chainl1 in combinator.Parsers) To deal with the type slack between actual (run-time) types and statically known types, for each abstract type T, reflect its variance as a skolem that is upper-bounded by T (covariant position), or lower-bounded by T (contravariant). Consider the following example: class AbsWrapperCov[+A] case class Wrapper[B](x: Wrapped[B]) extends AbsWrapperCov[B] def unwrap[T](x: AbsWrapperCov[T]): Wrapped[T] = x match { case Wrapper(wrapped) => // Wrapper's type parameter must not be assumed to be equal to T, // it's *upper-bounded* by it wrapped // : Wrapped[_ <: T] } this method should type check if and only if Wrapped is covariant in its type parameter before inferring Wrapper's type parameter B from x's type AbsWrapperCov[T], we must take into account that x's actual type is: AbsWrapperCov[Tactual] forSome {type Tactual <: T} since AbsWrapperCov is covariant in A -- in other words, we must not assume we know T exactly, all we know is its upper bound since method application is the only way to generate this slack between run-time and compile-time types (TODO: right!?), we can simply replace skolems that represent method type parameters as seen from the method's body by other skolems that are (upper/lower)-bounded by that type-parameter skolem (depending on the variance position of the skolem in the statically assumed type of the scrutinee, pt) this type slack is introduced by adaptConstrPattern: before it calls inferConstructorInstance, it creates a new context that holds the new existential skolems the context created by adaptConstrPattern must not be a CaseDef, since that confuses instantiateTypeVar and the whole pushTypeBounds/restoreTypeBounds dance (CaseDef contexts remember the bounds of the type params that we clobbered during GADT typing) typedCase deskolemizes the existential skolems back to the method skolems, since they don't serve any further purpose (except confusing the old pattern matcher) typedCase is now better at finding that context (using nextEnclosing)
| * | | | | | | | | SI-5189 1/2: inferConstrInst uses correct varianceAdriaan Moors2012-03-092-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fixed concurrent.impl.Promise by making FState invariant (it would be unsound to make it covariant)
* | | | | | | | | | Fix for tailcall transform/recognition bugs.Paul Phillips2012-03-116-2/+35
| |/ / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | Closes SI-3275, SI-5455.
* | | | | | | | | Add symbol to Manifests.Paul Phillips2012-03-091-5/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Phantom types were vanishing during the erasure which takes place from manifest -> class object -> tpe.
* | | | | | | | | Wider net on final fields.Paul Phillips2012-03-082-15/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This should exclude everything mutable. I'm open to suggestions as to what sort of final fields we can safely allow beyond these, if any.
* | | | | | | | | Merge remote-tracking branch 'origin/develop'Paul Phillips2012-03-072-0/+106
|\ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ Merge remote-tracking branch 'hubertp/issue/5554' into developPaul Phillips2012-03-072-0/+106
| |\ \ \ \ \ \ \ \ \
| | * | | | | | | | | Closes #SI-5554Hubert Plociniczak2012-03-062-0/+106
| | | | | | | | | | |
* | | | | | | | | | | Fix for public final fields.Paul Phillips2012-03-073-0/+39
|/ / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | References SI-3569. Probably needs refinement.
* | | | | | | | | | Merge remote-tracking branch 'VladUreche/issue/5545-clean' into developPaul Phillips2012-03-062-0/+27
|\ \ \ \ \ \ \ \ \ \