diff options
author | Som Snytt <som.snytt@gmail.com> | 2012-05-02 10:19:05 -0700 |
---|---|---|
committer | Som Snytt <som.snytt@gmail.com> | 2012-05-02 22:21:51 -0700 |
commit | aabe71f989f023d64b6c52680485e4cacb4e88b9 (patch) | |
tree | 6ad9b57f2a04d79dc2d38e9b5f06ba71c8688e33 /src | |
parent | b27abca41a2503747b3aeeecf8b8cb355159265f (diff) | |
download | scala-aabe71f989f023d64b6c52680485e4cacb4e88b9.tar.gz scala-aabe71f989f023d64b6c52680485e4cacb4e88b9.tar.bz2 scala-aabe71f989f023d64b6c52680485e4cacb4e88b9.zip |
SI-5720: Qual block doesn't update sym owner
A one-line change to blockWithQualifier. The symptom is
undefined tmp var symbols in the backend; lamba lift thinks
the tmp var is free and adds it to anonfun ctors.
Diffstat (limited to 'src')
-rw-r--r-- | src/compiler/scala/tools/nsc/typechecker/NamesDefaults.scala | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/NamesDefaults.scala b/src/compiler/scala/tools/nsc/typechecker/NamesDefaults.scala index 898a9fee9f..90e388c30a 100644 --- a/src/compiler/scala/tools/nsc/typechecker/NamesDefaults.scala +++ b/src/compiler/scala/tools/nsc/typechecker/NamesDefaults.scala @@ -155,6 +155,8 @@ trait NamesDefaults { self: Analyzer => val sym = blockTyper.context.owner.newValue(unit.freshTermName("qual$"), qual.pos) setInfo qual.tpe blockTyper.context.scope enter sym val vd = atPos(sym.pos)(ValDef(sym, qual) setType NoType) + // it stays in Vegas: SI-5720, SI-5727 + qual changeOwner (blockTyper.context.owner -> sym) var baseFunTransformed = atPos(baseFun.pos.makeTransparent) { // don't use treeCopy: it would assign opaque position. |