summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/common/bits/syscalls-common.h
diff options
context:
space:
mode:
Diffstat (limited to 'libc/sysdeps/linux/common/bits/syscalls-common.h')
-rw-r--r--libc/sysdeps/linux/common/bits/syscalls-common.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/libc/sysdeps/linux/common/bits/syscalls-common.h b/libc/sysdeps/linux/common/bits/syscalls-common.h
index 86fe26c50..3665345a6 100644
--- a/libc/sysdeps/linux/common/bits/syscalls-common.h
+++ b/libc/sysdeps/linux/common/bits/syscalls-common.h
@@ -42,10 +42,11 @@
# define INLINE_SYSCALL_NCS(num, nr, args...) \
(__extension__ \
({ \
+ long __res; \
INTERNAL_SYSCALL_DECL(__err); \
(__extension__ \
({ \
- long __res = INTERNAL_SYSCALL_NCS(num, __err, nr, args); \
+ __res = INTERNAL_SYSCALL_NCS(num, __err, nr, args); \
if (unlikely(INTERNAL_SYSCALL_ERROR_P(__res, __err))) { \
__set_errno(INTERNAL_SYSCALL_ERRNO(__res, __err)); \
__res = -1L; \
@@ -59,8 +60,9 @@
#ifndef INLINE_SYSCALL_NOERR_NCS
# define INLINE_SYSCALL_NOERR_NCS(num, nr, args...) \
({ \
+ long __res; \
INTERNAL_SYSCALL_DECL(__err); \
- long __res = INTERNAL_SYSCALL_NCS(num, __err, nr, args); \
+ __res = INTERNAL_SYSCALL_NCS(num, __err, nr, args); \
__res; \
})
#endif