summaryrefslogtreecommitdiff
path: root/src/lib/syscall/file_darwin.go
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2008-12-09 10:57:55 -0800
committerRuss Cox <rsc@golang.org>2008-12-09 10:57:55 -0800
commit2a6a6a917ab745ffc5c916213e8339f642212b80 (patch)
tree5a5c1565a284cc6f82528756b98d3d08b97af803 /src/lib/syscall/file_darwin.go
parent677e5c5780e88b5f75df2340db6d1faa164ab6cc (diff)
downloadgolang-2a6a6a917ab745ffc5c916213e8339f642212b80.tar.gz
replace assembly casts with unsafe.pointer
R=r DELTA=178 (18 added, 101 deleted, 59 changed) OCL=20822 CL=20826
Diffstat (limited to 'src/lib/syscall/file_darwin.go')
-rw-r--r--src/lib/syscall/file_darwin.go27
1 files changed, 15 insertions, 12 deletions
diff --git a/src/lib/syscall/file_darwin.go b/src/lib/syscall/file_darwin.go
index 0c6a38a3a..55add2567 100644
--- a/src/lib/syscall/file_darwin.go
+++ b/src/lib/syscall/file_darwin.go
@@ -2,11 +2,14 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
-package syscall
-
// File operations for Darwin
-import syscall "syscall"
+package syscall
+
+import (
+ "syscall";
+ "unsafe";
+)
const NameBufsize = 512
@@ -15,7 +18,7 @@ export func open(name string, mode int64, perm int64) (ret int64, errno int64) {
if !StringToBytes(&namebuf, name) {
return -1, ENAMETOOLONG
}
- r1, r2, err := Syscall(SYS_OPEN, BytePtr(&namebuf[0]), mode, perm);
+ r1, r2, err := Syscall(SYS_OPEN, int64(uintptr(unsafe.pointer(&namebuf[0]))), mode, perm);
return r1, err;
}
@@ -24,7 +27,7 @@ export func creat(name string, perm int64) (ret int64, errno int64) {
if !StringToBytes(&namebuf, name) {
return -1, ENAMETOOLONG
}
- r1, r2, err := Syscall(SYS_OPEN, BytePtr(&namebuf[0]), O_CREAT|O_WRONLY|O_TRUNC, perm);
+ r1, r2, err := Syscall(SYS_OPEN, int64(uintptr(unsafe.pointer(&namebuf[0]))), O_CREAT|O_WRONLY|O_TRUNC, perm);
return r1, err;
}
@@ -34,12 +37,12 @@ export func close(fd int64) (ret int64, errno int64) {
}
export func read(fd int64, buf *byte, nbytes int64) (ret int64, errno int64) {
- r1, r2, err := Syscall(SYS_READ, fd, BytePtr(buf), nbytes);
+ r1, r2, err := Syscall(SYS_READ, fd, int64(uintptr(unsafe.pointer(buf))), nbytes);
return r1, err;
}
export func write(fd int64, buf *byte, nbytes int64) (ret int64, errno int64) {
- r1, r2, err := Syscall(SYS_WRITE, fd, BytePtr(buf), nbytes);
+ r1, r2, err := Syscall(SYS_WRITE, fd, int64(uintptr(unsafe.pointer(buf))), nbytes);
return r1, err;
}
@@ -58,17 +61,17 @@ export func stat(name string, buf *Stat) (ret int64, errno int64) {
if !StringToBytes(&namebuf, name) {
return -1, ENAMETOOLONG
}
- r1, r2, err := Syscall(SYS_STAT64, BytePtr(&namebuf[0]), StatPtr(buf), 0);
+ r1, r2, err := Syscall(SYS_STAT64, int64(uintptr(unsafe.pointer(&namebuf[0]))), int64(uintptr(unsafe.pointer(buf))), 0);
return r1, err;
}
export func lstat(name *byte, buf *Stat) (ret int64, errno int64) {
- r1, r2, err := Syscall(SYS_LSTAT, BytePtr(name), StatPtr(buf), 0);
+ r1, r2, err := Syscall(SYS_LSTAT, int64(uintptr(unsafe.pointer(name))), int64(uintptr(unsafe.pointer(buf))), 0);
return r1, err;
}
export func fstat(fd int64, buf *Stat) (ret int64, errno int64) {
- r1, r2, err := Syscall(SYS_FSTAT, fd, StatPtr(buf), 0);
+ r1, r2, err := Syscall(SYS_FSTAT, fd, int64(uintptr(unsafe.pointer(buf))), 0);
return r1, err;
}
@@ -77,7 +80,7 @@ export func unlink(name string) (ret int64, errno int64) {
if !StringToBytes(&namebuf, name) {
return -1, ENAMETOOLONG
}
- r1, r2, err := Syscall(SYS_UNLINK, BytePtr(&namebuf[0]), 0, 0);
+ r1, r2, err := Syscall(SYS_UNLINK, int64(uintptr(unsafe.pointer(&namebuf[0]))), 0, 0);
return r1, err;
}
@@ -91,7 +94,7 @@ export func mkdir(name string, perm int64) (ret int64, errno int64) {
if !StringToBytes(&namebuf, name) {
return -1, ENAMETOOLONG
}
- r1, r2, err := Syscall(SYS_MKDIR, BytePtr(&namebuf[0]), perm, 0);
+ r1, r2, err := Syscall(SYS_MKDIR, int64(uintptr(unsafe.pointer(&namebuf[0]))), perm, 0);
return r1, err;
}