diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2014-10-01 08:51:36 +1000 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2014-10-01 09:00:04 +1000 |
commit | 84d46719a9ab3caa7ff46af4630d75f8c407c3d2 (patch) | |
tree | 467b70c4c27fed537fa7b2a014cb16b520aba609 /test/files/jvm/inner.scala | |
parent | a52db7f1639c6d48eaa64ae609385a60467fd566 (diff) | |
download | scala-84d46719a9ab3caa7ff46af4630d75f8c407c3d2.tar.gz scala-84d46719a9ab3caa7ff46af4630d75f8c407c3d2.tar.bz2 scala-84d46719a9ab3caa7ff46af4630d75f8c407c3d2.zip |
SI-8869 Prevent ill-kindedness in type lambdas
When type checking an type application, the arguments are allowed
to be of kinds other than *. This leniency is controlled by the
`ContextMode` bit `TypeConstructorAllowed`.
(More fine grained checking of matching arity a bounds of type
constructors is deferred until the refchecks phase to avoid
cycles during typechecking.)
However, this bit is propagated to child contexts, which means
that we fail to report this error in the lexical context marked
here:
T[({type x = Option}#x)]
`-------------'
This commit resets this bit to false in any child context
relates to a different tree from its parent.
Diffstat (limited to 'test/files/jvm/inner.scala')
0 files changed, 0 insertions, 0 deletions