Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fixed problem where lifted types leak into OfTypeImplicits | Martin Odersky | 2013-10-15 | 1 | -8/+16 |
| | |||||
* | Changes to adaptation and local type inference. | Martin Odersky | 2013-10-15 | 7 | -41/+52 |
| | |||||
* | Handles isAsGood with two polymorphic arguments. | Martin Odersky | 2013-10-15 | 1 | -4/+12 |
| | |||||
* | Implemented refined prinitng of function prototypes | Martin Odersky | 2013-10-15 | 1 | -0/+2 |
| | |||||
* | Made tracing appear even when currently in StoreReporter context | Martin Odersky | 2013-10-14 | 3 | -6/+8 |
| | |||||
* | Fixes to typevar instantiation | Martin Odersky | 2013-10-13 | 2 | -11/+13 |
| | | | | … with associatiated fixes and tightening of typestate consistency checking. | ||||
* | Bug fixes in <:< | Martin Odersky | 2013-10-13 | 2 | -4/+21 |
| | | | | | 1) Tightened optimization criteria for comparing refined types in last commit 2) Handles case where ThisType and SIngleType of module class coincide. | ||||
* | New invariant: refined types must have a refined info that's more specific ↵ | Martin Odersky | 2013-10-12 | 3 | -11/+14 |
| | | | | | | | than the previous bounds. Making use of this to make comparisons of refined types with the same names more efficient. Also, to make findMember on refined type with type refinement more efficient. | ||||
* | Tightening up typer state + printing refinements | Martin Odersky | 2013-10-12 | 11 | -32/+94 |
| | | | | | | 1) Made consistency checking water tight, so that inconsistencies are always catched wehn they arise 2) Fixed problem in implicit search that led to inconsistencies 3) Refined printing of type parameters and type arguments | ||||
* | Fixed missing type comparisons for bound types. | Martin Odersky | 2013-10-10 | 3 | -14/+46 |
| | | | | Also, new method "explained" in TypeComparers. | ||||
* | Added shortcuiting for type argument aliases. | Martin Odersky | 2013-10-10 | 1 | -4/+49 |
| | |||||
* | Modified printing of variant aliases | Martin Odersky | 2013-10-10 | 1 | -4/+8 |
| | | | | Now displayed with =+, =-. | ||||
* | New TypeArgs flag | Martin Odersky | 2013-10-10 | 1 | -1/+6 |
| | |||||
* | Added disambiguation for reported messages. | Martin Odersky | 2013-10-10 | 2 | -5/+9 |
| | | | | Added method disambiguate which disambiguates any string-returning operation. Disambiguation is done by adding owners and qualifiers each symbol has a unique string representation. | ||||
* | Partial revert of "instance flags" commit | Martin Odersky | 2013-10-09 | 1 | -9/+1 |
| | | | | 16c1ddd3bb86c61890418b8394d44486e7bbd9dd | ||||
* | Cleanup of new scheme for handling local type parameters and type members. | Martin Odersky | 2013-10-09 | 5 | -34/+69 |
| | | | | | | If a type parameter or local type member is co/contravariant, its instantiation is a special alias type that remembers the variance. These alias types can be refined with subtypes in subclasses and intersection and union translate to their bounds. | ||||
* | flags for instances | Martin Odersky | 2013-10-07 | 2 | -6/+18 |
| | | | | and changes flags for type params | ||||
* | Fixed problem with withMode leaking into enclosing context. | Martin Odersky | 2013-10-04 | 2 | -8/+8 |
| | |||||
* | No eta-expansion, implicit parameters when Mode = Type | Martin Odersky | 2013-10-04 | 1 | -3/+6 |
| | |||||
* | Prefiltering members in computeMembers ... | Martin Odersky | 2013-10-02 | 2 | -1/+24 |
| | | | | … to drop any member that uniquely defines a symbol that's already in the predenotation. This avoids merging the same symbols repeatedly in case of diamond inheritance. | ||||
* | Introducing mapReduce for OrTypes and AndTypes | Martin Odersky | 2013-10-02 | 2 | -5/+17 |
| | |||||
* | Added option -Yheartbeat | Martin Odersky | 2013-10-01 | 8 | -223/+307 |
| | | | | … which shows snapshot of the callstack of tracked operations at fixed intervals. | ||||
* | Changed &, | to distribute inside non-value types. | Martin Odersky | 2013-10-01 | 2 | -74/+246 |
| | | | | Also, new scheme to handle merge conflicts. | ||||
* | Removing a triggered assertion in applications. | Martin Odersky | 2013-10-01 | 2 | -10/+10 |
| | |||||
* | Changed logic for merges in lub/glb | Martin Odersky | 2013-09-30 | 5 | -53/+90 |
| | | | | | | | Now throws an exception for merge conflicts of types joint by |, a warning for types joint by &. Exception is handled as in the case of CyclicRefernce. Also: Added several typerState.checkConsistent for future debugging purposes. | ||||
* | Made sourcePos more robust | Martin Odersky | 2013-09-30 | 1 | -1/+2 |
| | | | | Now survives NoPosition. | ||||
* | Fixed logic in newTypeParams | Martin Odersky | 2013-09-30 | 1 | -4/+11 |
| | | | | gave a NPE before. | ||||
* | Fixed problem that () was not inserted if method was overloaded. | Martin Odersky | 2013-09-28 | 1 | -2/+11 |
| | |||||
* | Fixes problem with printing summary after compilation | Martin Odersky | 2013-09-28 | 2 | -1/+4 |
| | | | | Used wrong context/wrong reporter before. | ||||
* | Fixing a display bug. | Martin Odersky | 2013-09-28 | 1 | -1/+1 |
| | |||||
* | Several bug fixes to typer and classfile reader. | Martin Odersky | 2013-09-28 | 14 | -34/+87 |
| | | | | | In particular, changed internal representation of Java constructors and changed treatment of parent constructors in templates. | ||||
* | Direct access to symbol in TermRef | Martin Odersky | 2013-09-26 | 3 | -2/+7 |
| | | | | If symbol was given explicitly, return it directly rather than going through denot. | ||||
* | Added isRef method to determine whether a type is a typeref that refers to a ↵ | Martin Odersky | 2013-09-26 | 10 | -34/+48 |
| | | | | | | | symbol. The alternative (tpe eq sym.typeConstructor) does not work because types are not unique. The alternative (tpe.typeSymbol == sym) does not work because other types than TypeRefs have typeSymbols. | ||||
* | Sereval more bugfixes to typer and type handling. | Martin Odersky | 2013-09-25 | 5 | -21/+35 |
| | | | | Several of these avoided stackoverflows/cyclic references | ||||
* | Fixed handling of packages in world without HasFixedSym | Martin Odersky | 2013-09-24 | 1 | -0/+2 |
| | | | | Packages are always permanent; never reloaded. | ||||
* | Fixing problem related to overloaded symbols | Martin Odersky | 2013-09-24 | 2 | -4/+10 |
| | | | | Now that we have no longer termrefs with fixed syms, we need to create TermRefWithSignatures. Just setting symbol/denotation is not enough because of termref caching. | ||||
* | Module classes are now entered | Martin Odersky | 2013-09-24 | 2 | -3/+9 |
| | | | | Module classes are entered alongisde their source modules in parent scope. | ||||
* | Better display of list arguments in "i" interpolator | Martin Odersky | 2013-09-23 | 1 | -4/+8 |
| | |||||
* | Fixed a bug related to classfile parsing | Martin Odersky | 2013-09-23 | 2 | -3/+7 |
| | | | | Parsing inner classes of generic outer classes requires a name-unexpansion. | ||||
* | Avoided a cyclic reference error when dealing with hk types. | Martin Odersky | 2013-09-23 | 1 | -9/+17 |
| | |||||
* | Changed Throwing reporting scheme. | Martin Odersky | 2013-09-23 | 5 | -6/+9 |
| | | | | | Changed ThrowingReporter to use an underlying reporter for issuing messages below ERROR. Made ThrowingReporters the default in initialContext. | ||||
* | Changed type comparers to compare symbols of standard types instead of types ↵ | Martin Odersky | 2013-09-23 | 1 | -42/+65 |
| | | | | | | | | | | | | | | | themselves Types themselves are not unique, for instance, scala.Any would be TypeRef(ThisType(scala), Any) or TypeRef(TermRef(ThisType(_root_), scala), Any) Even if we pick only one internally we still risk unpickling both forms when reading scala 2 - compiled files. The only way to avoid this would be to change the ThisType constructor to always return a TypeRef for a module. | ||||
* | Experimental branch that drops {Term/Type}RefWithSym types | Martin Odersky | 2013-09-18 | 8 | -64/+81 |
| | |||||
* | Made TermRefs always resolve to NotAMethod signature by default. | Martin Odersky | 2013-09-17 | 1 | -23/+23 |
| | |||||
* | Made lub/glb fail early when trying to mix a class info with another type type. | Martin Odersky | 2013-09-17 | 2 | -10/+23 |
| | | | | The previous alternative of creating a TypeBounds with the TypeRef back to the class leads to infinite loops when chasing type proxies. Example was infinite loop in baseClasses in showClass test. | ||||
* | Bug fixes and improvements in error diagnostics. | Martin Odersky | 2013-09-16 | 15 | -177/+275 |
| | | | | Main refactoring: lub/glb moves to type comparers. | ||||
* | Added utility methods for TermRefs. | Martin Odersky | 2013-09-12 | 1 | -2/+8 |
| | |||||
* | Implemented "two-hop" implicit adaptation. | Martin Odersky | 2013-09-08 | 1 | -6/+26 |
| | | | | | | That is, in a selection qual.name(args), qual can be adapted to obtain a member "name" that matches args. Important to make usage patterns like this one work: 1 + BigInt(x) | ||||
* | Fixed an initialization problem in implicits | Martin Odersky | 2013-09-08 | 1 | -3/+3 |
| | |||||
* | Improvements to termref printing. | Martin Odersky | 2013-09-07 | 3 | -18/+43 |
| |