diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2012-12-11 12:26:52 +0100 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2012-12-11 12:26:52 +0100 |
commit | 79a43d78b27232be005755eb206fd9e4ce9a0625 (patch) | |
tree | 0f23ceceadf53e22441e333fe1733b6e91ad7476 /test/files/run/t6288.check | |
parent | 0acb8a30c379f268e8a3e1340504530493a1a1dc (diff) | |
download | scala-79a43d78b27232be005755eb206fd9e4ce9a0625.tar.gz scala-79a43d78b27232be005755eb206fd9e4ce9a0625.tar.bz2 scala-79a43d78b27232be005755eb206fd9e4ce9a0625.zip |
SI-6288 Position argument of unapply
`atPos(pos) { ... }` doesn't descend into children of
already positioned trees, we need to manually set the
position of `CODE.REF(binder)` to that of the stunt double
`Ident(nme.SELECTOR_DUMMY)`.
Diffstat (limited to 'test/files/run/t6288.check')
-rw-r--r-- | test/files/run/t6288.check | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/test/files/run/t6288.check b/test/files/run/t6288.check new file mode 100644 index 0000000000..3e65b8127c --- /dev/null +++ b/test/files/run/t6288.check @@ -0,0 +1,30 @@ +[[syntax trees at end of patmat]] // newSource1 +[7]package [7]<empty> { + [7]object Case3 extends [13][105]scala.AnyRef { + [105]def <init>(): [13]Case3.type = [105]{ + [105][105][105]Case3.super.<init>(); + [13]() + }; + [21]def unapply([29]z: [32]<type: [32]scala.Any>): [21]Option[Int] = [56][52][52]scala.Some.apply[[52]Int]([58]-1); + [64]{ + [64]case <synthetic> val x1: [64]Any = [64]""; + [64]case5()[84]{ + [84]<synthetic> val o7: [84]Option[Int] = [84][84]Case3.unapply([84]x1); + [84]if ([84]o7.isEmpty.unary_!) + [84]{ + [90]val nr: [90]Int = [64]o7.get; + [97][97]matchEnd4([97]()) + } + else + [84][84]case6() + }; + [64]case6(){ + [64][64]matchEnd4([64]throw [64][64][64]new [64]MatchError([64]x1)) + }; + [64]matchEnd4(x: [NoPosition]Unit){ + [64]x + } + } + } +} + |