summaryrefslogtreecommitdiff
path: root/lib/openat.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2006-06-20 19:20:25 +0000
committerPaul Eggert <eggert@cs.ucla.edu>2006-06-20 19:20:25 +0000
commit9d5fbcc019a802d14dcbd02c7c2a8659cc79ad55 (patch)
tree86df4d89980e78723c1a15aa5576ab71021a35fe /lib/openat.c
parent8280381dd703340cc2ad32e9c66e9de33f86444d (diff)
downloadcoreutils-9d5fbcc019a802d14dcbd02c7c2a8659cc79ad55.tar.xz
(openat): Use ?:, not if, to work around GCC bug 4210.
Diffstat (limited to 'lib/openat.c')
-rw-r--r--lib/openat.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/openat.c b/lib/openat.c
index 6a1b42ea6..7df52ea13 100644
--- a/lib/openat.c
+++ b/lib/openat.c
@@ -56,10 +56,9 @@ openat (int fd, char const *file, int flags, ...)
/* If mode_t is narrower than int, use the promoted type (int),
not mode_t. Use sizeof to guess whether mode_t is narrower;
we don't know of any practical counterexamples. */
- if (sizeof (mode_t) < sizeof (int))
- mode = va_arg (arg, int);
- else
- mode = va_arg (arg, mode_t);
+ mode = (sizeof (mode_t) < sizeof (int)
+ ? va_arg (arg, int)
+ : va_arg (arg, mode_t));
va_end (arg);
}