diff options
author | Paul Phillips <paulp@improving.org> | 2013-03-12 19:19:20 -0700 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2013-03-12 19:19:20 -0700 |
commit | c964643604ea9e431f4076069fbbc18953d3c1c9 (patch) | |
tree | e74367853bad0b03814d4e62c3dace4b2716664d /src/reflect | |
parent | 2f38bb8e5c69af0db63e05da78301dda916fad6f (diff) | |
parent | 34faa0d073a8613deebffe7605fd8a5e9a93afbc (diff) | |
download | scala-c964643604ea9e431f4076069fbbc18953d3c1c9.tar.gz scala-c964643604ea9e431f4076069fbbc18953d3c1c9.tar.bz2 scala-c964643604ea9e431f4076069fbbc18953d3c1c9.zip |
Merge pull request #2236 from retronym/ticket/6601-2
SI-6601 Close access loophole for value class constructors
Diffstat (limited to 'src/reflect')
-rw-r--r-- | src/reflect/scala/reflect/internal/Flags.scala | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/reflect/scala/reflect/internal/Flags.scala b/src/reflect/scala/reflect/internal/Flags.scala index 1987f34474..fe46a0471e 100644 --- a/src/reflect/scala/reflect/internal/Flags.scala +++ b/src/reflect/scala/reflect/internal/Flags.scala @@ -307,7 +307,11 @@ class Flags extends ModifierFlags { assert((OverloadedFlagsMask & FlagsNotPickled) == 0, flagsToString(OverloadedFlagsMask & FlagsNotPickled)) /** These flags are pickled */ - final val PickledFlags = InitialFlags & ~FlagsNotPickled + final val PickledFlags = ( + (InitialFlags & ~FlagsNotPickled) + | notPRIVATE // for value class constructors (SI-6601), and private members referenced + // in @inline-marked methods publicized in SuperAccessors (see SI-6608, e6b4204604) + ) /** If we have a top-level class or module * and someone asks us for a flag not in TopLevelPickledFlags, |