a note about Symbol.typeSignature

No changes to behavior, just documenting internal workings of reflection
a bit more thoroughly, one step at a time.
Revert "synchronizes pendingVolatiles"

This reverts commit 000c18a8fac60065747652368dadcd7850532f3f,
because Symbol.isStable is independent from Type.isVolatile
since fada1ef6b315326ac0329d9e78951cfc95ad0eb0.
FromJavaClassCompleter is now flag-agnostic

A minor evolution of the notion of completion + also a small performance
optimization.
removes non-determinism in reflection-sync-potpourri

Depending on the environment in which the test is run, s1 can be either
“String” or “java.lang.String”. This is one of the known non-deterministic
behaviors of our reflection, caused by prefix stripping only working for
packages defined in the root mirror. Until we fix this, I suggest we make
the test more lenient.
SI-8131 fixes residual race condition in runtime reflection

Apparently some completers can call setInfo while they’re not yet done,
which resets the LOCKED flag, and makes anything that uses LOCKED to
track completion unreliable. Unfortunately, that’s exactly the mechanism
that was used by runtime reflection to elide locking for symbols that are
known to be initialized.

This commit fixes the problematic lock elision strategy by introducing
an explicit communication channel between SynchronizedSymbol’s and their
completers. Now instead of trying hard to infer whether it’s already
initialized or not, every symbol gets a volatile field that can be queried
to provide necessary information.
turns off the gilSynchronizedIfNotInited optimization

According to Jason (https://github.com/scala/scala/pull/3391#issuecomment-32904460),
this one is still causing trouble, so we have to turn it off until
we have time to debug it.
Fix partest-extras eclipse project dependencies
Fix feature warnings in test.osgi.comp

Reduces the amount of noise from 22 lines down to the actually
interesting 5 lines of information.
Fix inconsistent binding in patterns with 10+ holes

Previously a map that was storing bindings of fresh hole variables with
their contents (tree & cardinality) used to be a SortedMap which had
issues with inconsistent key ordering:

   "$fresh$prefix$1" < "$fresh$prefix$2"
   ...
   "$fresh$prefix$8" < "$fresh$prefix$9"
   "$fresh$prefix$9" > "$fresh$prefix$10"

This issue is solved by using a LinkedHashMap instead (keys are inserted
in the proper order.)
Merge pull request #3474 from soc/topic/osgi-feature-warnings

Fix feature warnings in test.osgi.comp
Merge pull request #3475 from densh/topic/holemap-ordering

Fix inconsistent binding in patterns with 10+ holes
Merge pull request #3479 from adriaanm/eclipse

Fix partest-extras eclipse project dependencies
Rename EmptyTypTree into SyntacticEmptyTypeTree

1. Change the name as Eugene believes previous name was misleading

2. Remove EmptyTree case as it's not needed any longer
Represent tq"" as SyntacticEmptyTypeTree rather than TypeTree()

Such representation codifies the fact that type tree that doesn't have
embedded syntactic equivalent must have been inferred or otherwise
provided by the compiler rather than specified by the end user.

Additionally it also ensures that we can still match trees without
explicit types (e.g. vals without type) after typechecking. Otherwise
the same quote couldn't be used in situations like:

    val q"val x = 42" = typecheck(q"val x = 42")
Better comment for SyntacticEmptyTypeTree
Merge pull request #3477 from densh/topic/syntactic-empty-type-tree

Rename EmptyTypTree into SyntacticEmptyTypeTree
Use more specific return type for SyntacticFunction
Add support for a more straightforward alternative to import selectors
Merge pull request #3468 from densh/topic/syntactic-import

Add support for a more straightforward alternative to import selectors
Merge pull request #3391 from xeno-by/ticket/8131

SI-8131 fixes residual race condition in runtime reflection