diff options
author | Grzegorz Kossakowski <grzegorz.kossakowski@gmail.com> | 2014-09-18 09:26:31 +0200 |
---|---|---|
committer | Grzegorz Kossakowski <grzegorz.kossakowski@gmail.com> | 2014-09-18 09:26:31 +0200 |
commit | 8e1efc3549c081b0305df26e6963b49174b1f402 (patch) | |
tree | aa1abcd2f128c54a6d56eeed3da96348e8350f5a /src/compiler | |
parent | 2c23a5e70288c4b00c8c06c6ae5b6e65eede6ac0 (diff) | |
parent | 17a1abbff6816d0693bb98869cd26c25f695cffa (diff) | |
download | scala-8e1efc3549c081b0305df26e6963b49174b1f402.tar.gz scala-8e1efc3549c081b0305df26e6963b49174b1f402.tar.bz2 scala-8e1efc3549c081b0305df26e6963b49174b1f402.zip |
Merge pull request #3989 from retronym/ticket/8852
SI-8852 Support joint compilation of Java interfaces w. statics
Diffstat (limited to 'src/compiler')
-rw-r--r-- | src/compiler/scala/tools/nsc/javac/JavaParsers.scala | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/javac/JavaParsers.scala b/src/compiler/scala/tools/nsc/javac/JavaParsers.scala index 37b00aa9a3..9433ddcf31 100644 --- a/src/compiler/scala/tools/nsc/javac/JavaParsers.scala +++ b/src/compiler/scala/tools/nsc/javac/JavaParsers.scala @@ -488,7 +488,8 @@ trait JavaParsers extends ast.parser.ParsersCommon with JavaScanners { val vparams = formalParams() if (!isVoid) rtpt = optArrayBrackets(rtpt) optThrows() - val bodyOk = !inInterface || (mods hasFlag Flags.DEFAULTMETHOD) + val isStatic = mods hasFlag Flags.STATIC + val bodyOk = !inInterface || ((mods hasFlag Flags.DEFAULTMETHOD) || isStatic) val body = if (bodyOk && in.token == LBRACE) { methodBody() @@ -507,7 +508,7 @@ trait JavaParsers extends ast.parser.ParsersCommon with JavaScanners { EmptyTree } } - if (inInterface) mods1 |= Flags.DEFERRED + if (inInterface && !isStatic) mods1 |= Flags.DEFERRED List { atPos(pos) { DefDef(mods1, name.toTermName, tparams, List(vparams), rtpt, body) |