mirror of
https://github.com/golang/go
synced 2024-11-05 19:46:11 -07:00
596bb76248
Use pkgimport == nil (or not) to distinguish between parsing .go source files where "p" exponent specifier is not allowed and parsing .a or .o export data where it is. Use that to control error when p-exponent is seen. Fixes #9036 Change-Id: I8924f09c91d4945ef3f20e80a6e544008a94a7e4 Reviewed-on: https://go-review.googlesource.com/10450 Reviewed-by: Russ Cox <rsc@golang.org>
30 lines
730 B
Go
30 lines
730 B
Go
// errorcheck
|
|
|
|
// Copyright 2015 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.
|
|
|
|
// Expects to see error messages on "p" exponents.
|
|
|
|
package main
|
|
|
|
import "fmt"
|
|
|
|
const (
|
|
x1 = 1.1 // float
|
|
x2 = 1e10 // float
|
|
x3 = 0x1e10 // integer (e is a hex digit)
|
|
x4 = 0x1p10 // ERROR "malformed floating point constant"
|
|
x5 = 1p10 // ERROR "malformed floating point constant"
|
|
x6 = 0p0 // ERROR "malformed floating point constant"
|
|
)
|
|
|
|
func main() {
|
|
fmt.Printf("%g %T\n", x1, x1)
|
|
fmt.Printf("%g %T\n", x2, x2)
|
|
fmt.Printf("%g %T\n", x3, x3)
|
|
fmt.Printf("%g %T\n", x4, x4)
|
|
fmt.Printf("%g %T\n", x5, x5)
|
|
fmt.Printf("%g %T\n", x6, x6)
|
|
}
|