diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2011-12-15 07:12:03 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2011-12-15 07:12:03 +0000 |
commit | 5f8090a4352efa6e8efb2e8f9a4adfe602e2c0cd (patch) | |
tree | cebf094bde6c4579d2f09949de23183734783c41 /libgo | |
parent | aebac0ca061219f37518e6804e1b6319e68c0979 (diff) | |
download | gcc-5f8090a4352efa6e8efb2e8f9a4adfe602e2c0cd.zip gcc-5f8090a4352efa6e8efb2e8f9a4adfe602e2c0cd.tar.gz gcc-5f8090a4352efa6e8efb2e8f9a4adfe602e2c0cd.tar.bz2 |
syscall: Move Errno into its own file, for RTEMS.
From-SVN: r182356
Diffstat (limited to 'libgo')
-rw-r--r-- | libgo/Makefile.am | 1 | ||||
-rw-r--r-- | libgo/Makefile.in | 1 | ||||
-rw-r--r-- | libgo/go/syscall/syscall_errno.go | 26 | ||||
-rw-r--r-- | libgo/go/syscall/syscall_unix.go | 22 |
4 files changed, 28 insertions, 22 deletions
diff --git a/libgo/Makefile.am b/libgo/Makefile.am index 67ae871..2722fcb 100644 --- a/libgo/Makefile.am +++ b/libgo/Makefile.am @@ -1549,6 +1549,7 @@ endif go_base_syscall_files = \ go/syscall/env_unix.go \ + go/syscall/syscall_errno.go \ go/syscall/libcall_support.go \ go/syscall/libcall_posix.go \ go/syscall/socket.go \ diff --git a/libgo/Makefile.in b/libgo/Makefile.in index 2e1ea76..244cda8 100644 --- a/libgo/Makefile.in +++ b/libgo/Makefile.in @@ -1886,6 +1886,7 @@ go_unicode_utf8_files = \ @LIBGO_IS_LINUX_TRUE@syscall_netlink_file = go/syscall/netlink_linux.go go_base_syscall_files = \ go/syscall/env_unix.go \ + go/syscall/syscall_errno.go \ go/syscall/libcall_support.go \ go/syscall/libcall_posix.go \ go/syscall/socket.go \ diff --git a/libgo/go/syscall/syscall_errno.go b/libgo/go/syscall/syscall_errno.go new file mode 100644 index 0000000..810572f --- /dev/null +++ b/libgo/go/syscall/syscall_errno.go @@ -0,0 +1,26 @@ +// 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 syscall + +// An Errno is an unsigned number describing an error condition. +// It implements the error interface. The zero Errno is by convention +// a non-error, so code to convert from Errno to error should use: +// err = nil +// if errno != 0 { +// err = errno +// } +type Errno uintptr + +func (e Errno) Error() string { + return Errstr(int(e)) +} + +func (e Errno) Temporary() bool { + return e == EINTR || e == EMFILE || e.Timeout() +} + +func (e Errno) Timeout() bool { + return e == EAGAIN || e == EWOULDBLOCK || e == ETIMEDOUT +} diff --git a/libgo/go/syscall/syscall_unix.go b/libgo/go/syscall/syscall_unix.go index 899a65c..07d3af3 100644 --- a/libgo/go/syscall/syscall_unix.go +++ b/libgo/go/syscall/syscall_unix.go @@ -157,25 +157,3 @@ func Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, e func Munmap(b []byte) (err error) { return mapper.Munmap(b) } - - -// An Errno is an unsigned number describing an error condition. -// It implements the error interface. The zero Errno is by convention -// a non-error, so code to convert from Errno to error should use: -// err = nil -// if errno != 0 { -// err = errno -// } -type Errno uintptr - -func (e Errno) Error() string { - return Errstr(int(e)) -} - -func (e Errno) Temporary() bool { - return e == EINTR || e == EMFILE || e.Timeout() -} - -func (e Errno) Timeout() bool { - return e == EAGAIN || e == EWOULDBLOCK || e == ETIMEDOUT -} |