diff options
author | Eugene Burmako <xeno.by@gmail.com> | 2012-09-11 09:54:20 +0200 |
---|---|---|
committer | Eugene Burmako <xeno.by@gmail.com> | 2012-09-14 13:29:47 +0200 |
commit | 0eabb63c06f4041077860875c9ea71216adf4faa (patch) | |
tree | df7b74fc3588426e23291d2f4015d0f814479a75 /test/files/neg | |
parent | 00d7cd2d5300524aeb885d8d51b2123aa0b44f6e (diff) | |
download | scala-0eabb63c06f4041077860875c9ea71216adf4faa.tar.gz scala-0eabb63c06f4041077860875c9ea71216adf4faa.tar.bz2 scala-0eabb63c06f4041077860875c9ea71216adf4faa.zip |
SI-6323 prohibits reflection against free types
One of the use cases for free types is reification of local classes.
The result is very seamless. Despite that local classes are not pickled,
free types recreated the symbols referenced by local classes, so that we
get our own symbol table, which can be analyzed with usual precision of
pickled symbols and types.
However when we try to use those symbols for reflection, we hit a problem.
Scala runtime reflection uses its own mechanism for dealing with non-pickled
types, which is incompatible with mini symbol tables used in free types.
Therefore to prevent confusion, I prohibit using those symbols for reflection.
Diffstat (limited to 'test/files/neg')
0 files changed, 0 insertions, 0 deletions