aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Add summary comment, cleanupFelix Mulder2016-08-198-41/+84
|
* Fix compilation for multiple sourcesFelix Mulder2016-08-195-7/+34
|
* Add module member lookupFelix Mulder2016-08-1912-170/+380
|
* Port cooking of strings from NSCFelix Mulder2016-08-1912-35/+619
|
* Add project and impl for initial barebones dottydocFelix Mulder2016-08-1924-0/+1790
|
* Merge pull request #1452 from dotty-staging/fix-#1432Guillaume Martres2016-08-174-2/+18
|\ | | | | Fix desugaring of Bind(WILDCARD, _).
| * Fix #1432: Fix desugaring of Bind(WILDCARD, _).Nicolas Stucki2016-08-154-2/+18
| |
* | Merge pull request #1455 from dotty-staging/tests2Guillaume Martres2016-08-1719-30/+40
|\ \ | | | | | | Fix remaining hk issues in pending
| * | Add passing testsMartin Odersky2016-08-1710-2/+2
| | |
| * | Fix eta expansion for deeply curried methodsMartin Odersky2016-08-173-23/+6
| | | | | | | | | | | | | | | | | | Eta expansion yielded incorrect result if the eta expanded method has more than one parameter sections and the expected result type is a unary function type. In that case a postfix `_' needs to be appended.
| * | Harden copmpareHkApply for ill-typed programsMartin Odersky2016-08-174-4/+29
| | | | | | | | | | | | Turn assertion into test. Without this, neg/tcpoly_overloaded.scala fails.
| * | Add clause for HKApply in TypeAssigner#avoidMartin Odersky2016-08-172-1/+3
|/ /
* | Merge pull request #1434 from dotty-staging/fix-#1430Guillaume Martres2016-08-1738-358/+565
|\ \ | | | | | | Fix #1430: Better error messages for type errors involving type variables
| * | Fix merge conflictMartin Odersky2016-08-171-6/+6
| | |
| * | Don't omit scala. from fullNameString.Martin Odersky2016-08-161-1/+1
| | | | | | | | | | | | | | | | | | | | | The previous fix was too drastic, as it would also have omitted scala, Prefef and other "unqualified owner types" from full names. We now omit only "empty prefixes", i.e. roots, anonymous classes and repl qualifiers.
| * | Don't print $ suffixes of module classesMartin Odersky2016-08-161-1/+4
| | | | | | | | | | | | ... when printing using RefinedPrinter. PlainPrinter will still show them.
| * | Don't print REPL prefixes.Martin Odersky2016-08-161-0/+4
| | | | | | | | | | | | | | | This was already disabled when printing types. Now is also disabled when printing fully qualified names.
| * | Don't disambiguate aliasesMartin Odersky2016-08-161-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't disambiguate in situations like Predef.String vs java.lang.String where one Symbol is an alias of another with the same name. Also, fix reviewer comments wrt comments and unused defs.
| * | Catch exceptions only in i-interpolator.Martin Odersky2016-08-162-6/+2
| | | | | | | | | | | | | | | | | | Normal show will propagate the excpetions. Previously, exceptions were filtered in both cases, which was redundant. Also, it's good to have a way to show things that does not mask exceptions, if only to debug problems in show itself.
| * | Fix readLine in TestREPL to align with Ammonite readerMartin Odersky2016-08-163-4/+86
| | | | | | | | | | | | | | | | | | Needs to read several input lines at once. Enables repl test of new error messages.
| * | New string infterpolatorsMartin Odersky2016-08-1631-349/+420
| | | | | | | | | | | | | | | | | | Roll `sm` and `i` into one interpolator (also called `i`) Evolve `d` to `em` interpolator (for error messages) New interpolator `ex` with more explanations, replaces disambiguation.
| * | Error message for illegal self type (#1424)Martin Odersky2016-08-162-1/+4
| | | | | | | | | | | | Remove debug info from error message.
| * | Suspend interpolating typevars when there are unreported errors.Martin Odersky2016-08-162-6/+40
| | | | | | | | | | | | | | | | | | | | | | | | Interpolating typevars that appear co- or contra-variantly in a type is a cleanup measure - it helps keep the constraint set small. However, if there are uneported errors, some of these errors might report on unsatisfiable constraints for these type variables. In that case, instantiating the type variables risks being confusing.
| * | Fix #1430: Avoid constrained polyparams in error messageMartin Odersky2016-08-161-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | When issuing a type mismatch error, avoid mentioning polyparams in the current constraint set and their associated typevars. Mention instead the bound that caused the constrained to become unsatisfiable (if that bound is unique, i.e. the parameter appears co- or contravariantly in the type).
* | | Merge pull request #1438 from olafurpg/fix-1437/dotc-error-handlingFelix Mulder2016-08-161-1/+14
|\ \ \ | |/ / |/| | Fix #1437: handle build failure in bin/dotc.
| * | Fix #1437: handle build failure in bin/dotc.Ólafur Páll Geirsson2016-08-021-1/+14
| | |
* | | Merge pull request #1445 from dotty-staging/fix-#1442Dmitry Petrashko2016-08-154-1/+86
|\ \ \ | | | | | | | | Fix #1442: add new phase, SelectStatic
| * | | t4859: update the check file.Dmitry Petrashko2016-08-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The new behaviour is more reasonable. Now the module if forced consistently in both examples. Note that this is deviation from behaviour of scalac.
| * | | SelectStatic: do not promote types-qualifiers.Dmitry Petrashko2016-08-091-1/+1
| | | |
| * | | SelectStatic: retain symbols on overloaded selectsDmitry Petrashko2016-08-091-2/+1
| | | |
| * | | SelectStatic: also normalise TypeApply nodes.Dmitry Petrashko2016-08-091-0/+6
| | | |
| * | | SelectStatic: do not create blocks that are qualifier of select\applyDmitry Petrashko2016-08-091-11/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Blocks are not denoting trees(why aren't they?) For now, I'm fixing this using a quick fix. For future, it may make sense to discuss this on dotty meeting and make blocks be a Denoting tree and return denotation of expo. Another option is to move regularisation logic into tree transformers.
| * | | Fix SelectStatic: do not lift java statics to free idents.Dmitry Petrashko2016-08-091-1/+3
| | | |
| * | | Fix NoDenotation.owner in SelectStatic.Dmitry Petrashko2016-08-091-3/+3
| | | |
| * | | Test that #1442 is fixed.Dmitry Petrashko2016-08-091-0/+24
| | | |
| * | | Fix #1442: add new phase, SelectStaticDmitry Petrashko2016-08-092-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GenBCode has an implicit assumption that I wasn't aware of: GetStatic should not be emitted against a valid selector. If it is, GenBCode messes up the stack by not pop-ing the selector. Surprisingly, this transformation is perfumed in nsc by flatten.
* | | | Merge pull request #1450 from cswinter/elim-toplevel-typeboundGuillaume Martres2016-08-153-4/+9
|\ \ \ \ | |_|_|/ |/| | | Fix #1443: Replace toplevel TypeBounds with Any
| * | | Fix #1443: Replace toplevel TypeBounds with AnyClemens Winter2016-08-153-4/+9
| |/ /
* | | Merge pull request #1414 from dotty-staging/add-array-strawmanodersky2016-08-1414-22/+2602
|\ \ \ | | | | | | | | Add arrays to collection strawman
| * | | Add missing importMartin Odersky2016-07-311-0/+1
| | | |
| * | | Fix problem with IndexedView.iterator.lengthMartin Odersky2016-07-312-7/+6
| | | |
| * | | More systematic treatement of IndexedViewMartin Odersky2016-07-302-52/+122
| | | | | | | | | | | | | | | | | | | | Followinf @szeiger's suggestion, equip IndexView with optimized operations for map/drop/take.
| * | | Print kind of missing memberMartin Odersky2016-07-291-4/+4
| | | | | | | | | | | | | | | | | | | | When a member is missing, print whether we were looking for a type or a value.
| * | | Index members of a class before evaluating its parentsMartin Odersky2016-07-292-1/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoids missing member in tangledCompanion.scala, which is a minimization of intermittent failures in CollectionStrawMan6. Intermittent, because it depended on order of compilation. CollectionTests have to be compiled together with but before CollectionStrawMan6 (this was _sometimes_ the case because partest did not honor indicated compilation order so far). I.e. dotc CollectionTests_2.scala CollectionStrawMan6_1.scala would trigger the error. tangledCompanion.scala captures the dependencies in a single file.
| * | | Drop on LinearSeq needs to return collection of same type as it was called on.Martin Odersky2016-07-292-16/+76
| | | | | | | | | | | | | | | | This is achieved by putting it into a new trait, LinearSeqLike.
| * | | Tweaks to strawmanMartin Odersky2016-07-283-173/+213
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add proper :: to lists - Move some methods to IterableOps in order to keep Iterable clean - Rename knownLength to knownSize - Add some implentations for performance and completeness
| * | | Make colltest6 self-containedMartin Odersky2016-07-272-1/+2
| | | | | | | | | | | | | | | | Following the other colltests, put each in a separate package.
| * | | Simplify lexicallyEnclosingClassMartin Odersky2016-07-271-12/+3
| | | |
| * | | Quick-fix eclosingMethod attribute generation for t3048.scalaDmitry Petrashko2016-07-272-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's a funny interaction between: elim-by-name(and erasure specifically); lift-static; supercalls. object E extends F2(new B {}) Here we have an anonymous class new B {} that looks like it is created by erasure. For some reason this class forgets the link to original anonymous class: SymDenot(E$annon1).initial.phase == erasure. I guess this is a bug. Additionally, the owner of E$annon1 is an anonymous method inside E, that is inSuperCall and thus we have an anonymous nested class that has enclosingClass be package. This class looks like a top-level anonymous class breaking a lot of assumptions in shared backend and taking multiple branches in unexpected ways. I'm not sure that this is a proper fix. I assume there's a bigger bug around, but I don't quite understand it right now and I need to work on other stuff. Making a quick fix to unblock @odersky.
| * | | Move test from pos to runMartin Odersky2016-07-271-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Test generated code before but fails with verify error at runtime. Here's the message: Exception in thread "main" java.lang.VerifyError: Bad type on operand stack Exception Details: Location: D$.<init>()V @2: invokedynamic Reason: Type uninitializedThis (current frame, stack[1]) is not assignable to 'D$' Current Frame: bci: @2 flags: { flagThisUninit } locals: { uninitializedThis } stack: { uninitializedThis, uninitializedThis } Bytecode: 0x0000000: 2a2a ba00 1f00 00b7 0022 2ab3 0024 b1 at Test$.main(t3048.scala:13) at Test.main(t3048.scala) With the fix in last commit, test causes backend to crash with java.lang.AssertionError: assertion failed: val <none> at scala.Predef$.assert(Predef.scala:165) at scala.tools.nsc.backend.jvm.BCodeHelpers$BCInnerClassGen$class.assertClassNotArray(BCodeHelpers.scala:214) at scala.tools.nsc.backend.jvm.BCodeHelpers$BCInnerClassGen$class.assertClassNotArrayNotPrimitive(BCodeHelpers.scala:219) at scala.tools.nsc.backend.jvm.BCodeHelpers$BCInnerClassGen$class.getClassBTypeAndRegisterInnerClass(BCodeHelpers.scala:238) at scala.tools.nsc.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.getClassBTypeAndRegisterInnerClass(BCodeSkelBuilder.scala:51) at scala.tools.nsc.backend.jvm.BCodeHelpers$BCInnerClassGen$class.internalName(BCodeHelpers.scala:210)