/* go-varargs.c -- functions for calling C varargs functions. Copyright 2013 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. */ #include "config.h" #include #include /* The syscall package calls C functions. The Go compiler can not represent a C varargs functions. On some systems it's important that the declaration of a function match the call. This function holds non-varargs C functions that the Go code can call. */ int __go_open (char *path, int mode, mode_t perm) { return open (path, mode, perm); } int __go_fcntl (int fd, int cmd, int arg) { return fcntl (fd, cmd, arg); } #ifdef HAVE_OPEN64 int __go_open64 (char *path, int mode, mode_t perm) { return open64 (path, mode, perm); } #endif #ifdef HAVE_OPENAT int __go_openat (int fd, char *path, int flags, mode_t mode) { return openat (fd, path, flags, mode); } #endif