У меня есть этот маленький пример SCALA:не Scala предупреждает о неиспользованном вычислении или значениях
object Test {
def add(x: Int, y: Int) = {
val z = x - y
x match {
case 0 => 0 - y
case 1 => 1 - y
case _ => x - y
}
x + y
}
def main(args: Array[String]) {
println(add(5, 6))
}
}
Я чувствую, что должно предупредить Scala о «г» и «х матча ...» быть неиспользованным. Я не заметил никаких параметров компилятора, чтобы включить дополнительные предупреждения. Я использую scala 2.10.1.
Мысли? Благодаря!
Это совершенно правильный scala-код, как указано компилятором. Предупреждения о неиспользуемых переменных обычно являются тем, что анализатор исходного кода найдет и предупредит. Для подобной части кода компилятор 'java' также не отображает предупреждение. – Brian
@Brian Я не уверен, что javac является эталоном. 3 активиста говорят, что мне не нужна безопасность типа stinkin '! Я сократил скалак на слабине в матче, он все еще пытается прикрыть исчерпывающий характер. Он может предупреждать об отбрасывании значений для Unit, что предполагает, что он предупредит, может ли он предупредить. –
Попробуйте добавить параметр компилятора '' -Ywarn-value-discard ''. –