summaryrefslogtreecommitdiff
path: root/build.xml
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2013-01-16 18:04:03 +0100
committerJason Zaugg <jzaugg@gmail.com>2013-01-29 23:44:38 +0100
commit45ccdc5b89f8fb47a418c8c1304e16afc4d14e2c (patch)
tree2457958734caddfcd109086fe68bdb97bdce571c /build.xml
parenteff78b852e8b866badf9b9738f896c2a31c05474 (diff)
downloadscala-45ccdc5b89f8fb47a418c8c1304e16afc4d14e2c.tar.gz
scala-45ccdc5b89f8fb47a418c8c1304e16afc4d14e2c.tar.bz2
scala-45ccdc5b89f8fb47a418c8c1304e16afc4d14e2c.zip
SI-6651 Substitute `this` in extension method sigs
This allows for the likes of: class A[X](val x: X) extends AnyVal { def foo(xy: x.Y) {} } We have to do this in both directions, when synthesizing the extension method in `Extender#transform`, and later on when Erasure tries to find the corresponding extension methods by backing out the original signatures from the signatures of the synthesized methods in the companion. In the first case, we have to be careful to use a stable reference to the `self` parameter, which can satisfy the dependent types.
Diffstat (limited to 'build.xml')
0 files changed, 0 insertions, 0 deletions