| // compile | 
 |  | 
 | // Copyright 2017 The Go Authors. All rights reserved. | 
 | // Use of this source code is governed by a BSD-style | 
 | // license that can be found in the LICENSE file. | 
 |  | 
 | // Issue 19515: compiler panics on spilling int128 constant. | 
 |  | 
 | package x | 
 |  | 
 | type VScrollPanel struct { | 
 | 	x, y int | 
 | } | 
 |  | 
 | type Color struct { | 
 | 	R, G, B, A float32 | 
 | } | 
 |  | 
 | func maxF(a, b float32) float32 { | 
 | 	if a > b { | 
 | 		return 0 | 
 | 	} | 
 | 	return 1 | 
 | } | 
 |  | 
 | type TransformMatrix [6]float32 | 
 |  | 
 | type Paint struct { | 
 | 	xform      TransformMatrix | 
 | 	feather    float32 | 
 | 	innerColor Color | 
 | 	outerColor Color | 
 | } | 
 |  | 
 | func BoxGradient(x, y, w, h, f float32, iColor, oColor Color) Paint { | 
 | 	return Paint{ | 
 | 		xform:      TransformMatrix{9, 0, 0, 0, x, y}, | 
 | 		feather:    maxF(1.0, f), | 
 | 		innerColor: iColor, | 
 | 		outerColor: oColor, | 
 | 	} | 
 | } | 
 |  | 
 | func (v *VScrollPanel) Draw() { | 
 | 	x := float32(v.x) | 
 | 	y := float32(v.y) | 
 |  | 
 | 	BoxGradient(x+x-2, y-1, 0, 0, 0, Color{}, Color{}) | 
 | 	BoxGradient(x+y-2, y-1, 0, 0, 0, Color{}, Color{}) | 
 | } | 
 |  |