diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2012-12-04 20:19:01 +0100 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2012-12-04 20:19:01 +0100 |
commit | 327083df40d1854f28c00983aed5734fa6a7e6f9 (patch) | |
tree | 7c73e838f328014a79c36d71dde35b0fba3b3963 /src/reflect | |
parent | fd57069a3a49de1757a518b573a0cd8cb98bbbd5 (diff) | |
download | scala-327083df40d1854f28c00983aed5734fa6a7e6f9.tar.gz scala-327083df40d1854f28c00983aed5734fa6a7e6f9.tar.bz2 scala-327083df40d1854f28c00983aed5734fa6a7e6f9.zip |
SI-5361 Avoid cyclic type with malformed refinement
The statement `val x = this` in the refinment type:
(new {}): {val x = this}
is lazily typechecked, in order to, according to the comment
in `typedRefinment, "avoid cyclic reference errors".
But the approximate type used ends up with:
Refinment@1(
parents = [...]
decls = { val x: Refinement@1 })
This commit eagerly checks that there is no term definitions
in type refinments, rather than delaying this.
This changes the error message for SI-3614.
Diffstat (limited to 'src/reflect')
0 files changed, 0 insertions, 0 deletions