Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --- sandbox/old.log 2015-09-06 00:08:11.000000000 +1000
- +++ sandbox/new.log 2015-09-06 00:08:05.000000000 +1000
- @@ -1,133 +1,133 @@
- [[syntax trees at end of mixin]] // test.scala
- package <empty> {
- class C extends Object {
- - private def C_O$lzycompute(): C$C_O.type = {
- + @volatile <synthetic> private[this] var C_O$module: C$C_O.type = _;
- + <stable> private def C_O$lzycompute(): C$C_O.type = {
- {
- C.this.synchronized({
- if (C.this.C_O$module.eq(null))
- {
- C.this.C_O$module = new C$C_O.type(C.this);
- ()
- };
- scala.runtime.BoxedUnit.UNIT
- });
- - null
- + ()
- };
- C.this.C_O$module
- };
- - private def O$1$lzycompute(x$1: runtime.VolatileObjectRef): C$O$2.type = {
- + <stable> def C_O(): C$C_O.type = if (C.this.C_O$module.eq(null))
- + C.this.C_O$lzycompute()
- + else
- + C.this.C_O$module;
- + def test(): Unit = {
- + @volatile var O$module: runtime.VolatileObjectRef = scala.runtime.VolatileObjectRef.zero();
- + ()
- + };
- + final <stable> private[this] def O$lzycompute$1(O$module$1: runtime.VolatileObjectRef): C$O$2.type = {
- {
- C.this.synchronized({
- - if (x$1.elem.eq(null))
- + if (O$module$1.elem.$asInstanceOf[C$O$2.type]().eq(null))
- {
- - x$1.elem = new C$O$2.type(C.this);
- + O$module$1.elem = new C$O$2.type(C.this);
- ()
- };
- scala.runtime.BoxedUnit.UNIT
- });
- - null
- + ()
- };
- - x$1.elem.$asInstanceOf[C$O$2.type]()
- - };
- - @volatile <synthetic> private[this] var C_O$module: C$C_O.type = _;
- - <stable> def C_O(): C$C_O.type = if (C.this.C_O$module.eq(null))
- - C.this.C_O$lzycompute()
- - else
- - C.this.C_O$module;
- - def test(): Unit = {
- - @volatile var O$module: runtime.VolatileObjectRef = scala.runtime.VolatileObjectRef.zero();
- - ()
- + O$module$1.elem.$asInstanceOf[C$O$2.type]()
- };
- - final <stable> private[this] def O$1(O$module$1: runtime.VolatileObjectRef): C$O$2.type = if (O$module$1.elem.eq(null))
- - C.this.O$1$lzycompute(O$module$1)
- + final <stable> private[this] def O$1(O$module$1: runtime.VolatileObjectRef): C$O$2.type = if (O$module$1.elem.$asInstanceOf[C$O$2.type]().eq(null))
- + C.this.O$lzycompute$1(O$module$1)
- else
- O$module$1.elem.$asInstanceOf[C$O$2.type]();
- def <init>(): C = {
- C.super.<init>();
- ()
- }
- };
- abstract trait T extends Object {
- <stable> def T_O(): T$T_O.type;
- def test(): Unit
- };
- class D extends Object with T {
- + def test(): Unit = T$class.test(D.this);
- @volatile <synthetic> private[this] var T_O$module: T$T_O.type = _;
- - private def T_O$lzycompute(): T$T_O.type = {
- + <stable> private def T_O$lzycompute(): T$T_O.type = {
- {
- D.this.synchronized({
- if (D.this.T_O$module.eq(null))
- {
- D.this.T_O$module = new T$T_O.type(D.this);
- ()
- };
- scala.runtime.BoxedUnit.UNIT
- });
- - null
- + ()
- };
- D.this.T_O$module
- };
- <stable> def T_O(): T$T_O.type = if (D.this.T_O$module.eq(null))
- D.this.T_O$lzycompute()
- else
- D.this.T_O$module;
- - def test(): Unit = T$class.test(D.this);
- def <init>(): D = {
- D.super.<init>();
- T$class./*T$class*/$init$(D.this);
- ()
- }
- };
- abstract trait T$class extends {
- - private def test_O$1$lzycompute(x$1: T, x$2: runtime.VolatileObjectRef): T$test_O$2.type = {
- + def test($this: T): Unit = {
- + @volatile var test_O$module: runtime.VolatileObjectRef = scala.runtime.VolatileObjectRef.zero();
- + ()
- + };
- + final <stable> private[this] def test_O$lzycompute$1($this: T, test_O$module$1: runtime.VolatileObjectRef): T$test_O$2.type = {
- {
- - x$1.synchronized({
- - if (x$2.elem.eq(null))
- + $this.synchronized({
- + if (test_O$module$1.elem.$asInstanceOf[T$test_O$2.type]().eq(null))
- {
- - x$2.elem = new T$test_O$2.type(x$1);
- + test_O$module$1.elem = new T$test_O$2.type($this);
- ()
- };
- scala.runtime.BoxedUnit.UNIT
- });
- - null
- + ()
- };
- - x$2.elem.$asInstanceOf[T$test_O$2.type]()
- - };
- - def test($this: T): Unit = {
- - @volatile var test_O$module: runtime.VolatileObjectRef = scala.runtime.VolatileObjectRef.zero();
- - ()
- + test_O$module$1.elem.$asInstanceOf[T$test_O$2.type]()
- };
- - final <stable> private[this] def test_O$1($this: T, test_O$module$1: runtime.VolatileObjectRef): T$test_O$2.type = if (test_O$module$1.elem.eq(null))
- - T$class.this.test_O$1$lzycompute($this, test_O$module$1)
- + final <stable> private[this] def test_O$1($this: T, test_O$module$1: runtime.VolatileObjectRef): T$test_O$2.type = if (test_O$module$1.elem.$asInstanceOf[T$test_O$2.type]().eq(null))
- + T$class.test_O$lzycompute$1($this, test_O$module$1)
- else
- test_O$module$1.elem.$asInstanceOf[T$test_O$2.type]();
- def /*T$class*/$init$($this: T): Unit = {
- ()
- }
- };
- object C$C_O extends Object {
- def <init>($outer: C): C$C_O.type = {
- C$C_O.super.<init>();
- ()
- }
- };
- object C$O$2 extends Object {
- def <init>($outer: C): C$O$2.type = {
- C$O$2.super.<init>();
- ()
- }
- };
- object T$T_O extends Object {
- def <init>($outer: T): T$T_O.type = {
- T$T_O.super.<init>();
- ()
- }
- };
- object T$test_O$2 extends Object {
- def <init>($outer: T): T$test_O$2.type = {
- T$test_O$2.super.<init>();
- ()
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement