From 381209889a348349f97e414485d5fcf3c8e8931d Mon Sep 17 00:00:00 2001 From: Adriaan Moors Date: Thu, 6 Aug 2009 15:36:00 +0000 Subject: fixed #2208 --- test/files/neg/ticket2208.check | 4 ++++ test/files/neg/ticket2208.scala | 8 ++++++++ test/files/pos/ticket2208.scala | 8 ++++++++ 3 files changed, 20 insertions(+) create mode 100644 test/files/neg/ticket2208.check create mode 100644 test/files/neg/ticket2208.scala create mode 100644 test/files/pos/ticket2208.scala (limited to 'test/files') diff --git a/test/files/neg/ticket2208.check b/test/files/neg/ticket2208.check new file mode 100644 index 0000000000..9aa6658bf4 --- /dev/null +++ b/test/files/neg/ticket2208.check @@ -0,0 +1,4 @@ +ticket2208.scala:9: error: type arguments [Any] do not conform to type Alias's type parameter bounds [X <: Test.A] + class C extends Alias[Any] // not ok, normalisation should check bounds before expanding Alias + ^ +one error found \ No newline at end of file diff --git a/test/files/neg/ticket2208.scala b/test/files/neg/ticket2208.scala new file mode 100644 index 0000000000..43bb0adec5 --- /dev/null +++ b/test/files/neg/ticket2208.scala @@ -0,0 +1,8 @@ +object Test { + class A + + class B[X] + type Alias[X <: A] = B[X] + + class C extends Alias[Any] // not ok, normalisation should check bounds before expanding Alias +} \ No newline at end of file diff --git a/test/files/pos/ticket2208.scala b/test/files/pos/ticket2208.scala new file mode 100644 index 0000000000..f1a521b14c --- /dev/null +++ b/test/files/pos/ticket2208.scala @@ -0,0 +1,8 @@ +object Test { + class A + + class B[X] + type Alias[X <: A] = B[X] + + val foo: B[A] = new Alias[A] // check that type aliases can be instantiated +} \ No newline at end of file -- cgit v1.2.3