You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If you remove that temporary variable (and put the statement inline), the code the compiler generates results in:
Caught1: java.lang.VerifyError: (class:
wisp/Reader$$anonfun$wisp$Reader$$literalListParser$1$$anonfun$apply$36$$anon$7,
method: signature:
(Lwisp/Reader$$anonfun$wisp$Reader$$literalListParser$1$$anonfun$apply$36;Lscala/collection/immutable/List;)V)
Expecting to find object/array on stack
Easy enough to reproduce:
$ git clone git@github.com:espringe/wisp.git
$ cd wisp && git checkout 04a2c643933b0fe
$ sbt test # all works fine
// remove tmp variable /src/main/scala/wisp/reader.scala:L64
$ sbt test # watch it asplode
The text was updated successfully, but these errors were encountered:
@retronym said (edited on Oct 11, 2012 8:03:50 AM UTC):
Here's a minimization. Demonstrated in 2.8.1; this isn't a regression.
~/code/scala scala28
Welcome to Scala version 2.8.1.final (JavaHotSpot(TM) 64-BitServerVM, Java1.6.0_27).
Type in expressions to have them evaluated.
Type:help for more information.
scala>objectS { def#::(a: Any):Any= () }
defined module S
scala>traitT; classWL(a: Any); newWL(new {} #::S) withT
java.lang.VerifyError: (class: $anon$1, method: <init> signature: ()V) Expecting to find object/array on stack
at .<init>(<console>:8)
scala>traitT; classWL(a: Any); newWL(S.#::(new {})) withT
defined traitT
defined classWL
scala>classWL(a: Any); newWL(new {} #::S)
defined classWL
scala>traitT; classWL(a: Any); objectXextendsWL(new {} #::S) withT; X
defined traitT
defined classWL
defined module X
https://github.com/espringe/wisp/blob/04a2c643933b0fec871ba186e233da0019802ebe/src/main/scala/wisp/reader.scala#L64
If you remove that temporary variable (and put the statement inline), the code the compiler generates results in:
Caught1: java.lang.VerifyError: (class:
wisp/Reader$$anonfun$wisp$Reader$$literalListParser$1$$anonfun$apply$36$$anon$7,
method: signature:
(Lwisp/Reader$$anonfun$wisp$Reader$$literalListParser$1$$anonfun$apply$36;Lscala/collection/immutable/List;)V)
Expecting to find object/array on stack
Easy enough to reproduce:
$ git clone git@github.com:espringe/wisp.git
$ cd wisp && git checkout 04a2c643933b0fe
$ sbt test # all works fine
// remove tmp variable /src/main/scala/wisp/reader.scala:L64
$ sbt test # watch it asplode
The text was updated successfully, but these errors were encountered: