From a9b85dbaad568b5c709a5eb6ab23907cdf4ee29e Mon Sep 17 00:00:00 2001 From: Martin Odersky Date: Wed, 11 Jul 2012 19:03:35 +0200 Subject: Pickled flag reorg Cleaned up and optimized code that maps between raw and pickled flags. Avoids mystery constants. Makes a whole bunch of new flags be pickled which were not pickled before (more precisely: Everything in InitialFlags with value greater than 1 << 31 which is not in FlagsNotPickled now gets pickled whereas before it wasn't. Among these: VARARGS, IMPLCLASS, SPECIALZED, DEFAULTINIT, SYNCHRONIZED. I am curious how many tickets will get fixed by this change. The first one I noted is t5504, which previously enforced the buggy behavior through a neg check! There are also some build manager check file changes that have to do with the fact that flags now print in a different order for performance reasons. --- test/files/pos/t5504/s_1.scala | 4 ++++ test/files/pos/t5504/s_2.scala | 8 ++++++++ 2 files changed, 12 insertions(+) create mode 100644 test/files/pos/t5504/s_1.scala create mode 100644 test/files/pos/t5504/s_2.scala (limited to 'test/files/pos') diff --git a/test/files/pos/t5504/s_1.scala b/test/files/pos/t5504/s_1.scala new file mode 100644 index 0000000000..35cb2c8bae --- /dev/null +++ b/test/files/pos/t5504/s_1.scala @@ -0,0 +1,4 @@ +// a.scala +package object foo { + val m: List[_] = Nil +} diff --git a/test/files/pos/t5504/s_2.scala b/test/files/pos/t5504/s_2.scala new file mode 100644 index 0000000000..03eecf6e19 --- /dev/null +++ b/test/files/pos/t5504/s_2.scala @@ -0,0 +1,8 @@ +// b.scala +package foo + +object Test { + def main(args: Array[String]): Unit = { + println(foo.m) + } +} -- cgit v1.2.3