summaryrefslogtreecommitdiff
path: root/test/files/pos/bug802.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2006-11-17 17:31:51 +0000
committerMartin Odersky <odersky@gmail.com>2006-11-17 17:31:51 +0000
commitf6183ef4b030030606f46fe2463d325e39ae6174 (patch)
tree9f9630626ff7dceb0ec1a577c3765600a5be3424 /test/files/pos/bug802.scala
parent7106a3e0e1ec4bf27ba7f8b23ae32a37c579243c (diff)
downloadscala-f6183ef4b030030606f46fe2463d325e39ae6174.tar.gz
scala-f6183ef4b030030606f46fe2463d325e39ae6174.tar.bz2
scala-f6183ef4b030030606f46fe2463d325e39ae6174.zip
fixed bugs 802 and 807 (recursive lub problems).
Changes system so that now an approximation of lub/glb is computed.
Diffstat (limited to 'test/files/pos/bug802.scala')
-rw-r--r--test/files/pos/bug802.scala27
1 files changed, 27 insertions, 0 deletions
diff --git a/test/files/pos/bug802.scala b/test/files/pos/bug802.scala
new file mode 100644
index 0000000000..2dea7036d6
--- /dev/null
+++ b/test/files/pos/bug802.scala
@@ -0,0 +1,27 @@
+package test;
+trait Test {
+ abstract class BracesImpl {
+ type Singleton;
+ type Brace <: Singleton with BraceImpl;
+ trait BraceImpl;
+ trait ForFile;
+ }
+ abstract class ParensImpl extends BracesImpl {
+ type Brace <: Singleton with BraceImpl;
+ trait BraceImpl extends super.BraceImpl;
+ }
+ val parens : ParensImpl;
+ abstract class BracksImpl extends BracesImpl {
+ type Brace <: Singleton with BraceImpl;
+ trait BraceImpl extends super.BraceImpl;
+ }
+ val bracks : BracksImpl;
+ trait File {
+ def parens0 : parens.BraceImpl;
+ def bracks0 : bracks.BraceImpl;
+ def braces(b : BracesImpl) = b match {
+ case b if b == parens => parens0;
+ case b if b == bracks => bracks0;
+ }
+ }
+}