summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/ion/bug980860.js
blob: 35d072f3ea29728c7ee3a5e68c25fcebb6f7ceef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
if (typeof TypedObject === 'undefined')
    quit();

var StructType = TypedObject.StructType;
var uint8 = TypedObject.uint8;

function check(c) {
  assertEq(c.r, 129);
}

function run() {
  var RgbColor = new StructType({r: uint8, g: uint8, b: uint8});
  var Fade = new StructType({from: RgbColor, to: RgbColor});

  var BrgColor = new StructType({b: uint8, r: uint8, g: uint8});
  var BrgFade = new StructType({from: BrgColor, to: BrgColor});

  var gray = new RgbColor({r: 129, g: 128, b: 127});

  var fade = new Fade({from: gray, to: gray});
  fade.to = {r: 129, g: 128, b: 127};

  var brgGray = new BrgColor(gray);
  fade.from = brgGray;

  var brgFade = new BrgFade(fade);

  check(fade.to);
  check(brgFade.to);
  check(fade.to);
  check(brgFade.to);
}

run();