Aladdin - Scala Bugtracking
[#440] project: compiler priority: high category: bug
submitter assigned to status date submitted
Gilles Burak fixed 2005-06-07 14:18:48.0
subject Guard on pattern prevents alternative pattern on same value
code
object Test with Application {
	val tata = 1;
	val titi = 0.8;
	tata match {
		case 1 if (titi < 0.5) => Console.print("a")
		case 0 | 1 => Console.print("b")
	}
}
what happened
Exception in thread "main" scala.MatchError: 1
        at Test$.(test.scala:4)
        at Test$.(test.scala)
what expected b
[back to overview]
Changes of this bug report
Gilles  edited on  2005-06-07 15:44:01.0
Burak  edited on  2005-06-10 18:37:48.0
Gilles  edited on  2005-06-13 17:34:28.0
Gilles  edited on  2006-03-24 17:51:22.0
Updated "what happened" to Scala 2. Bug is still there :-(
Burak  edited on  2006-03-30 17:02:05.0
replaced plain `if's with `(cond && thenp)||elsep' in order for "backtracking" in translation to work.