Skip to content

Commit f1c6714

Browse files
committed
Fix for SI-5535.
1 parent cfc4757 commit f1c6714

File tree

3 files changed

+31
-1
lines changed

3 files changed

+31
-1
lines changed

src/compiler/scala/tools/nsc/interpreter/MemberHandlers.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ trait MemberHandlers {
120120
private def vparamss = member.vparamss
121121
private def isMacro = member.mods.hasFlag(scala.reflect.internal.Flags.MACRO)
122122
// true if not a macro and 0-arity
123-
override def definesValue = !isMacro && (vparamss.isEmpty || vparamss.head.isEmpty)
123+
override def definesValue = !isMacro && (vparamss.isEmpty || vparamss.head.isEmpty && vparamss.tail.isEmpty)
124124
override def resultExtractionCode(req: Request) =
125125
if (mods.isPublic) codegenln(name, ": ", req.typeOf(name)) else ""
126126
}

test/files/run/t5535.check

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
Type in expressions to have them evaluated.
2+
Type :help for more information.
3+
4+
scala>
5+
6+
scala> def h()(i: Int) = 1 + i
7+
h: ()(i: Int)Int
8+
9+
scala> println(h()(5))
10+
6
11+
12+
scala> val f = h() _
13+
f: Int => Int = <function1>
14+
15+
scala> println(f(10))
16+
11
17+
18+
scala>
19+
20+
scala>

test/files/run/t5535.scala

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import scala.tools.partest.ReplTest
2+
3+
object Test extends ReplTest {
4+
def code = """
5+
def h()(i: Int) = 1 + i
6+
println(h()(5))
7+
val f = h() _
8+
println(f(10))
9+
"""
10+
}

0 commit comments

Comments
 (0)