From 70e2162afee52f9e52e652e55a5ab3bbdc550214 Mon Sep 17 00:00:00 2001 From: Martin Odersky Date: Tue, 6 Mar 2007 13:06:21 +0000 Subject: fixed bug 979 --- src/library/scala/collection/immutable/HashSet.scala | 4 ++-- test/files/pos/bug946.scala | 8 ++++++++ test/files/run/bug949.scala | 14 ++++++++++++++ 3 files changed, 24 insertions(+), 2 deletions(-) create mode 100755 test/files/pos/bug946.scala create mode 100755 test/files/run/bug949.scala diff --git a/src/library/scala/collection/immutable/HashSet.scala b/src/library/scala/collection/immutable/HashSet.scala index 5bc8054a0d..05f5fd11d1 100644 --- a/src/library/scala/collection/immutable/HashSet.scala +++ b/src/library/scala/collection/immutable/HashSet.scala @@ -98,8 +98,8 @@ class HashSet[A] extends Set[A] with mutable.FlatHashTable[A] { def undo(m: HashSet[A]) { if (m ne last) { undo(m.later) - if (m.deleted) addEntry(changedElem) - else removeEntry(changedElem) + if (m.deleted) addEntry(m.changedElem) + else removeEntry(m.changedElem) } } table = new Array[AnyRef](last.table.length) diff --git a/test/files/pos/bug946.scala b/test/files/pos/bug946.scala new file mode 100755 index 0000000000..c4bd6e9ba4 --- /dev/null +++ b/test/files/pos/bug946.scala @@ -0,0 +1,8 @@ +object pmbugbounds { + trait Bar + class Foo[t <: Bar] {} + + (new Foo[Bar]) match { + case _ : Foo[x] => null + } +} diff --git a/test/files/run/bug949.scala b/test/files/run/bug949.scala new file mode 100755 index 0000000000..9cce7bc6e6 --- /dev/null +++ b/test/files/run/bug949.scala @@ -0,0 +1,14 @@ +object Test extends Application { + + def f = new T { val state = State.A } + + private object State extends Enumeration { + val A, B = Value + } + + f +} + +trait T { +} + -- cgit v1.2.3