diff options
author | Martin Odersky <odersky@gmail.com> | 2012-09-19 19:02:43 +0200 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2012-09-20 09:41:34 -0700 |
commit | d87592da76eb555f0e3fc3732169e56b1852fba1 (patch) | |
tree | 69e6e4c21241e174942bce493aec289b46a6dce9 /test/files/disabled/t4245 | |
parent | c7204787b48166b5dee6215525f69ae615535c5a (diff) | |
download | scala-d87592da76eb555f0e3fc3732169e56b1852fba1.tar.gz scala-d87592da76eb555f0e3fc3732169e56b1852fba1.tar.bz2 scala-d87592da76eb555f0e3fc3732169e56b1852fba1.zip |
Disabled failing build manager tests.
When the refined build manager computes its change sets it mixes up
the types. It computes constructors of inner classes of the first
compilation that point to types of the second compilation. This
breaks a useful assertion in ExtensionMethods. The error you get for
t4245 is
java.lang.AssertionError: assertion failed: unexpected constructor
erasure A#6956.this.B#20211 for class B#6963
What goes on here is that the primary constructor of inner
class B#6963 points to the new version of that inner class
A#6956.this.B#20211. This happens during the computation of change
sets, not during normal compilation. Since it looks like the
computation of change sets is broken I have disabled the tests,
rather than disabling the assertion.
It seems that during residential compilation, the result type of a
constructor can be a different version of the enclosing class. I
could not reproduce this
Diffstat (limited to 'test/files/disabled/t4245')
-rw-r--r-- | test/files/disabled/t4245/A.scala | 3 | ||||
-rw-r--r-- | test/files/disabled/t4245/t4245.check | 6 | ||||
-rw-r--r-- | test/files/disabled/t4245/t4245.test | 2 |
3 files changed, 11 insertions, 0 deletions
diff --git a/test/files/disabled/t4245/A.scala b/test/files/disabled/t4245/A.scala new file mode 100644 index 0000000000..7c4efe1b4b --- /dev/null +++ b/test/files/disabled/t4245/A.scala @@ -0,0 +1,3 @@ +class A { + class B(val a: Int) +} diff --git a/test/files/disabled/t4245/t4245.check b/test/files/disabled/t4245/t4245.check new file mode 100644 index 0000000000..3d3898c671 --- /dev/null +++ b/test/files/disabled/t4245/t4245.check @@ -0,0 +1,6 @@ +builder > A.scala +compiling Set(A.scala) +Changes: Map() +builder > A.scala +compiling Set(A.scala) +Changes: Map(class A -> List(), class A$B -> List()) diff --git a/test/files/disabled/t4245/t4245.test b/test/files/disabled/t4245/t4245.test new file mode 100644 index 0000000000..392e0d365f --- /dev/null +++ b/test/files/disabled/t4245/t4245.test @@ -0,0 +1,2 @@ +>>compile A.scala +>>compile A.scala |