diff options
author | Eugene Burmako <xeno.by@gmail.com> | 2014-03-01 09:34:35 -0500 |
---|---|---|
committer | Eugene Burmako <xeno.by@gmail.com> | 2014-03-01 09:34:35 -0500 |
commit | da124b33956f83be8b2ebbb77208c4aecde1c6dc (patch) | |
tree | 93f460f61eac9f6b26493cee43724cd6e4605591 /src/compiler | |
parent | cfac5e9e540434d5d1fc6decc2e6669995473c87 (diff) | |
parent | 6ec0f2f44f74657799b4b215c913a67089110061 (diff) | |
download | scala-da124b33956f83be8b2ebbb77208c4aecde1c6dc.tar.gz scala-da124b33956f83be8b2ebbb77208c4aecde1c6dc.tar.bz2 scala-da124b33956f83be8b2ebbb77208c4aecde1c6dc.zip |
Merge pull request #3596 from densh/si/8333
SI-8333 can't use modifiers if class is in a block
Diffstat (limited to 'src/compiler')
-rw-r--r-- | src/compiler/scala/tools/nsc/ast/parser/Parsers.scala | 8 | ||||
-rw-r--r-- | src/compiler/scala/tools/reflect/quasiquotes/Parsers.scala | 2 |
2 files changed, 6 insertions, 4 deletions
diff --git a/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala b/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala index 3542fe5945..9e631febee 100644 --- a/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala +++ b/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala @@ -3096,10 +3096,6 @@ self => stats ++= importClause() acceptStatSepOpt() } - else if (isExprIntro) { - stats += statement(InBlock) - if (!isCaseDefEnd) acceptStatSep() - } else if (isDefIntro || isLocalModifier || isAnnotation) { if (in.token == IMPLICIT) { val start = in.skipToken() @@ -3110,6 +3106,10 @@ self => } acceptStatSepOpt() } + else if (isExprIntro) { + stats += statement(InBlock) + if (!isCaseDefEnd) acceptStatSep() + } else if (isStatSep) { in.nextToken() } diff --git a/src/compiler/scala/tools/reflect/quasiquotes/Parsers.scala b/src/compiler/scala/tools/reflect/quasiquotes/Parsers.scala index b22e0b0e82..af17ae9ac0 100644 --- a/src/compiler/scala/tools/reflect/quasiquotes/Parsers.scala +++ b/src/compiler/scala/tools/reflect/quasiquotes/Parsers.scala @@ -118,6 +118,8 @@ trait Parsers { self: Quasiquotes => override def isTemplateIntro: Boolean = super.isTemplateIntro || (isHole && lookingAhead { isTemplateIntro }) + override def isDefIntro: Boolean = super.isDefIntro || (isHole && lookingAhead { isDefIntro }) + override def isDclIntro: Boolean = super.isDclIntro || (isHole && lookingAhead { isDclIntro }) override def isStatSep(token: Int) = token == EOF || super.isStatSep(token) |