Skip to content

SI-8276 Test for cyclic error caused by (reverted) SI-1786 fix #3526

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Feb 14, 2014

Conversation

retronym
Copy link
Member

We reverted SI-1786 recently on the grounds that its means of
avoiding cycles (not sharpening bounds of T[_] when T is
uninitialized) caused unacceptable non-determinism (well:
compilation order dependency) to type inference.

Nary a day later, @gkossakowski hit a regression in scala-io.
Bisection revealed that it stopped working in 2dbd17a and
started working agiain after the revert. How's that for
prescience!

I've distilled the cyclic error in scala-io in this test
case.

I'm yet to pinpoint this, followon error, which didn't survive
the shrink ray, and only appeared in the original code:

error: java.lang.IndexOutOfBoundsException: 0
at scala.collection.LinearSeqOptimized$class.apply(LinearSeqOptimized.scala:51)
at scala.collection.immutable.List.apply(List.scala:83)
at scala.reflect.internal.tpe.TypeMaps$AsSeenFromMap.correspondingTypeArgument(TypeMaps.scala:5

Review by @gkossakowski.

/cc @adriaanm (it will make a good test case for the alternative
approach you're trying.)

We reverted SI-1786 recently on the grounds that its means of
avoiding cycles (not sharpening bounds of T[_] when T is
uninitialized) caused unacceptable non-determinism (well:
compilation order dependency) to type inference.

Nary a day later, @gkossakowski hit a regression in scala-io.
Bisection revealed that it stopped working in 2dbd17a and
started working agiain after the revert. How's that for
prescience!

I've distilled the cyclic error in scala-io in this test
case.

I'm yet to pinpoint this, followon error, which didn't survive
the shrink ray, and only appeared in the original code:

    error: java.lang.IndexOutOfBoundsException: 0
	at scala.collection.LinearSeqOptimized$class.apply(LinearSeqOptimized.scala:51)
	at scala.collection.immutable.List.apply(List.scala:83)
	at scala.reflect.internal.tpe.TypeMaps$AsSeenFromMap.correspondingTypeArgument(TypeMaps.scala:5
@adriaanm
Copy link
Contributor

LGTM!

@gkossakowski
Copy link
Contributor

LGTM

Thanks!

gkossakowski added a commit that referenced this pull request Feb 14, 2014
SI-8276 Test for cyclic error caused by (reverted) SI-1786 fix
@gkossakowski gkossakowski merged commit 7eca4e7 into scala:master Feb 14, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants