scala/scala — pull request #1761 by adriaanm (2012-12-12 18:30:17+00:00)
Title: SI-6692 pickle one more flag bit: EXISTENTIAL

before, PickledFlags & EXISTENTIAL == 0, so that an existential symbol would
lose the EXISTENTIAL bit when pickled, causing spurious incremental recompiles,
as pickled information and type-checking-from-source-based information differed

pickling this additional bit should be a compatible change, as older versions (pre-2.9.3)
will simply mask out the extra flag bits pickled as of now (2.9.3) so that their behavior
is not affected -- newer versions will see more flags, which might cause regressions,
but it's also the only way to fix SI-6692

this obviates the need to set the existential flag when unpickling an existential type's params

this is the smallest backport of a9b85dbaad and 3e2c31fbeb that I could think of

as 2.9 is in maintenance mode, I don't want to invest in testing infrastructure to test the pickler,
however, the fix is tested by the incremental compiler test 'inc-pickled-existential' in sbt

review by @paulp, still taking feasible testing-suggestions