scala/scala — pull request #2317 by retronym (2013-03-26 13:53:21+00:00)
Title: SI-7232 Fix Java import vs defn. binding precendence

Java Spec:
> A single-type-import declaration d in a compilation unit c
> of package p that imports a type named n shadows, throughout
> c, the declarations of:
> - any top level type named n declared in another compilation
> unit of p
> - any type named n imported by a type-import-on-demand
> declaration in c
> - any type named n imported by a static-import-on-demand
> declaration in c

Scala Spec:
> Bindings of different kinds have a precedence deﬁned on them:
> 1. Deﬁnitions and declarations that are local, inherited, or made
> available by a package clause in the same compilation unit where
> the deﬁnition occurs have highest precedence.
> 2. Explicit imports have next highest precedence.

This is a forward port of 6e79370, which did not merge cleanly
and was omitted in the regular merge from 2.10.x to master.

Conflicts:
src/compiler/scala/tools/nsc/typechecker/Typers.scala

Review by @adriaanm