diff options
author | mihaylov <mihaylov@epfl.ch> | 2005-03-01 11:20:37 +0000 |
---|---|---|
committer | mihaylov <mihaylov@epfl.ch> | 2005-03-01 11:20:37 +0000 |
commit | 78dedbcfe828d8d629154911b2ab2f555fe18cb6 (patch) | |
tree | a6fa2f1c7456a050d21282f3d94fdcaf5c4c9338 /sources/scalac | |
parent | 434f79ad150032b748f1eb630695a6ca5bd95ba4 (diff) | |
download | scala-78dedbcfe828d8d629154911b2ab2f555fe18cb6.tar.gz scala-78dedbcfe828d8d629154911b2ab2f555fe18cb6.tar.bz2 scala-78dedbcfe828d8d629154911b2ab2f555fe18cb6.zip |
- Give private inner classes assembly visibility.
in the interface of a Scala class and if they are private they are
not accessible from the implementation class. Giving them assembly
visibility solves the problem.
Diffstat (limited to 'sources/scalac')
-rw-r--r-- | sources/scalac/backend/msil/TypeCreator.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sources/scalac/backend/msil/TypeCreator.java b/sources/scalac/backend/msil/TypeCreator.java index af106a1fa1..48d82735a8 100644 --- a/sources/scalac/backend/msil/TypeCreator.java +++ b/sources/scalac/backend/msil/TypeCreator.java @@ -1195,7 +1195,11 @@ final class TypeCreator { if (nested) { if (Modifiers.Helper.isPrivate(mods)) - attr |= TypeAttributes.NestedPrivate; + //attr |= TypeAttributes.NestedPrivate; + // Inner classes end up in the interface of a Scala class + // and are not accessible from the implementation class. + // Giving them assembly visibility fixes the problem. + attr |= TypeAttributes.NestedAssembly; else if (Modifiers.Helper.isProtected(mods)) attr |= TypeAttributes.NestedFamORAssem; else |