aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Fixes to lifting in eta-expansionMartin Odersky2013-12-111-5/+5
| | | | | 1. Lifted defs should not get expr or singleton types of the lifted value. Need to widen. 2. In op-assignments we need to lift the prefix of the lhs function, not the function itself.
* Fixes and tests for typedIdentMartin Odersky2013-12-102-22/+27
| | | | Fixed a problem where an import and a definition in same scope were erroneously regarded as a conflict (L20 in typedIdents.scala)
* Fixing a problem with swallowed errorsMartin Odersky2013-12-102-3/+15
| | | | | | | The problem was that in FunProto#typedArg we cache typed arguments, to retrieve them later, possibly in a different context (Example: typedArg might be computed during overloading resolution, and then cached copy might be inserted in resolved call. The problem is that any errors, warnings or other diagnostics might be swallowed, if typedArg is computed in a context that is not committed but then re-used in a committed context. The fix is to cache typed arguments only if no diagnostics were issued during their computation.
* Fixes to avoid stale symbols and to avoid methods as pattern constructors.Martin Odersky2013-12-093-32/+53
|
* Fix of error that arose when searching for the companion object of a class ↵Martin Odersky2013-12-091-1/+1
| | | | with symbolic name.
* Added desugaring for & and | types.Martin Odersky2013-12-093-2/+6
|
* Fixes to desugaring and typing of parameterized TypedefsMartin Odersky2013-12-092-3/+3
|
* Fixes to inherited result types in Namer.Martin Odersky2013-12-092-12/+13
|
* Fix to & and |Martin Odersky2013-12-091-4/+8
| | | | | | Previously Any & NoType was NoType, whereas it should be Any Similarly for combinations of Nothing with NoType and also for |
* Last fixes to desugar.Martin Odersky2013-12-081-2/+9
|
* Defensive programming in ApplicationsMartin Odersky2013-12-081-3/+5
| | | | | - now handles the case where names in NamedArgs are wrong - assertion check that default getter is indeed present
* Names of created symbols need to be encoded.Martin Odersky2013-12-081-2/+2
|
* Fix to parsing infix types.Martin Odersky2013-12-081-2/+3
|
* Making encode stick on <init>Martin Odersky2013-12-081-1/+2
| | | | Previous one was a no-op, because <init> is excluded from Name#encode
* Fixes to desugaring of for-expressions with embedded aliases.Martin Odersky2013-12-081-24/+56
|
* Fix that avoids overzealous function lifting.Martin Odersky2013-12-081-1/+1
|
* Fixing toText for for expressions.Martin Odersky2013-12-081-1/+6
| | | | Filters did not show the "if" before.
* Fixing problem in TypeComparing.Martin Odersky2013-12-081-1/+1
| | | | Have to strip TypeVars so as to not enter them as bounds.
* Better reporting for pattern matching errors.Martin Odersky2013-12-082-3/+4
|
* Fixes to type-checking (_: T)Martin Odersky2013-12-071-9/+17
| | | | Also, widening before computing an annotated type.
* Fixes for translation of pattern definitions (PatDef)Martin Odersky2013-12-071-2/+4
|
* Fixes for desugarings of case classes.Martin Odersky2013-12-074-27/+50
| | | | Also: Standardized on selectorName; Translate $init$ to <init> when unpickling.
* Fixing expansion and merge companion defs.Martin Odersky2013-12-061-15/+24
|
* Dropping TRAIT_CONSTRUCTOR name.Martin Odersky2013-12-063-5/+4
| | | | Trait constructors are now also called <init>. When expanding traits we might want to use IMPLCLASS_CONSTRUCTOR.
* Empty type trees in desugarings need a TypeTree(), not an EmptyTreeMartin Odersky2013-12-062-4/+6
|
* Refined printing of module names.Martin Odersky2013-12-062-3/+10
| | | | Previously printing a simple name always suppressed a module class suffix, which led to sometimes confusing output. Now we are more selective where the suffix is suppressed.
* Made New(tpt, args) work for parameterized types tpt.Martin Odersky2013-12-061-3/+12
|
* Fixes to liftingMartin Odersky2013-12-052-4/+35
| | | | Plus more commenting of Desugar
* Fixes to named and default arguments.Martin Odersky2013-12-054-55/+64
| | | | Now come with test cases.
* Changes to Desugar and Namer.Martin Odersky2013-12-054-40/+74
| | | | In particular: Changed the scheme to represent the types of setter parameters.
* Overloading resolution changeMartin Odersky2013-12-051-3/+7
| | | | | | | | | | | NarrowMostSpecific does no longer disable implicits. With implicits disabled, the system is unable to prefer def + (x: Int): Int over def + (x: Float): Float
* Changing some assertions on isCommittableMartin Odersky2013-12-053-4/+4
|
* Refactoring test compatible.Martin Odersky2013-12-022-11/+10
|
* Streamlining isApplicableMartin Odersky2013-12-022-24/+19
|
* Fixes to type applications and unapply.Martin Odersky2013-12-026-35/+56
|
* Tweaks to applications, operator assignments, and variable definitions.Martin Odersky2013-12-016-101/+125
|
* Polishing EtaExpansionMartin Odersky2013-12-012-26/+55
| | | | Some code simplification + a change where non-idempotent Selects in function prefix position are now lifted as a whole (previously, only the prefix was lifted).
* Added divergence check for implicit searchesMartin Odersky2013-11-303-1/+77
|
* Tweaking ImplicitsMartin Odersky2013-11-292-42/+40
| | | | Still to do: catch cycles.
* SimpleMap.foreachKey -> foreachBindingMartin Odersky2013-11-294-29/+24
|
* Tweaks to InferencingMartin Odersky2013-11-294-132/+178
| | | | Also: Making VarianceMap a SimpleMap for replayability
* File name renamingMartin Odersky2013-11-283-4/+1
| | | | Bringing file names tpd/untpd in line with the objects they define.
* Using SimpleMap instead of Map for replayability.Martin Odersky2013-11-281-13/+12
|
* Making substitutions deep type maps that also map parents and self type of a ↵Martin Odersky2013-11-282-25/+28
| | | | class info.
* Refactorings in TypeComparers and elsewhereMartin Odersky2013-11-283-106/+78
| | | | Broke out common functionality in two new methods: widenExpr, and commonVariance.
* Tightening (constraint contains param) conditionMartin Odersky2013-11-281-1/+1
|
* Making maps configurable so that they can also go inside parents and self ↵Martin Odersky2013-11-281-1/+16
| | | | types of ClassInfos.
* Hoisting out commonly used values into util.commonMartin Odersky2013-11-286-43/+62
| | | | ... because this cuts down on object creations. Also, some polishings in Denotations.
* Optimizing signaturesMartin Odersky2013-11-273-30/+32
| | | | Interesting signatures are now cached.
* Changed SignaturesMartin Odersky2013-11-279-79/+116
| | | | Signatures have a different meaning before and after erasure. After erasure, the result type counts also whereas before it doesn't. The new definitions refelect this behavior.