URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [go.test/] [test/] [const1.go] - Rev 700
Compare with Previous | Blame | View Log
// errchk $G -e $F.go// Copyright 2009 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.package maintype I interface{}const (// assume all types behave similarly to int8/uint8Int8 int8 = 101Minus1 int8 = -1Uint8 uint8 = 102Const = 103Float32 float32 = 104.5Float64 float64 = 105.5ConstFloat = 106.5Big float64 = 1e300String = "abc"Bool = true)var (a1 = Int8 * 100 // ERROR "overflow"a2 = Int8 * -1 // OKa3 = Int8 * 1000 // ERROR "overflow"a4 = Int8 * int8(1000) // ERROR "overflow"a5 = int8(Int8 * 1000) // ERROR "overflow"a6 = int8(Int8 * int8(1000)) // ERROR "overflow"a7 = Int8 - 2*Int8 - 2*Int8 // ERROR "overflow"a8 = Int8 * Const / 100 // ERROR "overflow"a9 = Int8 * (Const / 100) // OKb1 = Uint8 * Uint8 // ERROR "overflow"b2 = Uint8 * -1 // ERROR "overflow"b3 = Uint8 - Uint8 // OKb4 = Uint8 - Uint8 - Uint8 // ERROR "overflow"b5 = uint8(^0) // ERROR "overflow"b6 = ^uint8(0) // OKb7 = uint8(Minus1) // ERROR "overflow"b8 = uint8(int8(-1)) // ERROR "overflow"b8a = uint8(-1) // ERROR "overflow"b9 byte = (1 << 10) >> 8 // OKb10 byte = (1 << 10) // ERROR "overflow"b11 byte = (byte(1) << 10) >> 8 // ERROR "overflow"b12 byte = 1000 // ERROR "overflow"b13 byte = byte(1000) // ERROR "overflow"b14 byte = byte(100) * byte(100) // ERROR "overflow"b15 byte = byte(100) * 100 // ERROR "overflow"b16 byte = byte(0) * 1000 // ERROR "overflow"b16a byte = 0 * 1000 // OKb17 byte = byte(0) * byte(1000) // ERROR "overflow"b18 byte = Uint8 / 0 // ERROR "division by zero"c1 float64 = Bigc2 float64 = Big * Big // ERROR "overflow"c3 float64 = float64(Big) * Big // ERROR "overflow"c4 = Big * Big // ERROR "overflow"c5 = Big / 0 // ERROR "division by zero")func f(int)func main() {f(Int8) // ERROR "convert|wrong type|cannot"f(Minus1) // ERROR "convert|wrong type|cannot"f(Uint8) // ERROR "convert|wrong type|cannot"f(Const) // OKf(Float32) // ERROR "convert|wrong type|cannot"f(Float64) // ERROR "convert|wrong type|cannot"f(ConstFloat) // ERROR "truncate"f(ConstFloat - 0.5) // OKf(Big) // ERROR "convert|wrong type|cannot"f(String) // ERROR "convert|wrong type|cannot|incompatible"f(Bool) // ERROR "convert|wrong type|cannot|incompatible"}const ptr = nil // ERROR "const.*nil"
