diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2013-03-11 22:12:11 +0100 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2013-03-13 22:24:03 +0100 |
commit | 6e79370294777421d6f01b8a635e71dc0e2454d6 (patch) | |
tree | 5f81d0c6da370953b074235d19b46f2b4e493dfe /test/files/pos/t7232c | |
parent | 2ff7650fb9f337dd123449e6cbcefc521cac8556 (diff) | |
download | scala-6e79370294777421d6f01b8a635e71dc0e2454d6.tar.gz scala-6e79370294777421d6f01b8a635e71dc0e2454d6.tar.bz2 scala-6e79370294777421d6f01b8a635e71dc0e2454d6.zip |
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 defined on them:
> 1. Definitions and declarations that are local, inherited, or made
> available by a package clause in the same compilation unit where
> the definition occurs have highest precedence.
> 2. Explicit imports have next highest precedence.
Diffstat (limited to 'test/files/pos/t7232c')
-rw-r--r-- | test/files/pos/t7232c/Foo.java | 10 | ||||
-rw-r--r-- | test/files/pos/t7232c/Test.scala | 4 |
2 files changed, 14 insertions, 0 deletions
diff --git a/test/files/pos/t7232c/Foo.java b/test/files/pos/t7232c/Foo.java new file mode 100644 index 0000000000..bbda09a2da --- /dev/null +++ b/test/files/pos/t7232c/Foo.java @@ -0,0 +1,10 @@ +package pack; + +import java.util.List; + +public class Foo { + public static class List { + public void isInnerList() {} + } + public static List innerList() { throw new Error(); } +} diff --git a/test/files/pos/t7232c/Test.scala b/test/files/pos/t7232c/Test.scala new file mode 100644 index 0000000000..aa7c710948 --- /dev/null +++ b/test/files/pos/t7232c/Test.scala @@ -0,0 +1,4 @@ +object Test { + import pack._ + Foo.innerList().isInnerList() +} |