summaryrefslogtreecommitdiff
path: root/src/reflect
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan@lightbend.com>2016-11-29 16:28:45 -0800
committerGitHub <noreply@github.com>2016-11-29 16:28:45 -0800
commit50d46c12766228155a6d52cf7b33add4fa24a86e (patch)
tree3aa6d7178eeb46f34f794db275802e1b5f583521 /src/reflect
parent71a2cad36fa3c69d2ff3461f6a60ba5c846fb05e (diff)
parentb00a3e50da66086ef0f1a4c214866a591089b934 (diff)
downloadscala-50d46c12766228155a6d52cf7b33add4fa24a86e.tar.gz
scala-50d46c12766228155a6d52cf7b33add4fa24a86e.tar.bz2
scala-50d46c12766228155a6d52cf7b33add4fa24a86e.zip
Merge pull request #5554 from retronym/ticket/10009
SI-10009 Fields survive untypecheck/retypecheck
Diffstat (limited to 'src/reflect')
-rw-r--r--src/reflect/scala/reflect/internal/TreeInfo.scala3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/reflect/scala/reflect/internal/TreeInfo.scala b/src/reflect/scala/reflect/internal/TreeInfo.scala
index 61937958dd..1aef30819a 100644
--- a/src/reflect/scala/reflect/internal/TreeInfo.scala
+++ b/src/reflect/scala/reflect/internal/TreeInfo.scala
@@ -480,7 +480,8 @@ abstract class TreeInfo {
} map { dd =>
val DefDef(dmods, dname, _, _, _, drhs) = dd
// get access flags from DefDef
- val vdMods = (vmods &~ Flags.AccessFlags) | (dmods & Flags.AccessFlags).flags
+ val defDefMask = Flags.AccessFlags | OVERRIDE | IMPLICIT | DEFERRED
+ val vdMods = (vmods &~ defDefMask) | (dmods & defDefMask).flags
// for most cases lazy body should be taken from accessor DefDef
val vdRhs = if (vmods.isLazy) lazyValDefRhs(drhs) else vrhs
copyValDef(vd)(mods = vdMods, name = dname, rhs = vdRhs)