scala/scala — pull request #915 by gkossakowski (2012-07-16 14:53:11+00:00)
Title: SI-6035: Specialization and separate compilation.

Fix an issue when specialization wouldn't work properly
in a setting where separate compilation was involved.
E.g. if you inherit from a class that is specialized and
has been compiled separately you might not get proper
forwarders generated. A test-case that this commit
adds covers that scenario.

The root cause of this issue was the fact that
SPECIALIZED flag was not pickled. Thanks to recent
Flags reorganization (see a9b85db) all that needs
to be done is to set the flag before pickling.

We choose to that in superaccessors phase because
it's a phase that runs before pickling and after
type checking (so we can check if given symbol
has an annotation).

Removed old logic from uncurry that was responsible
for setting flags that is not needed anymore because
we set them in superaccessors.

Review by @axel22 and @paulp.