@olegil
I think it only produces an error if the inline version of the open() function is used: Quote:
__errordecl (__open_too_many_args, "open can be called either with 2 or 3 arguments, not more"); __errordecl (__open_missing_mode, "open with O_CREAT in second argument needs 3 arguments");
__extern_always_inline int open (__const char *__path, int __oflag, ...) { if (__va_arg_pack_len () > 1) __open_too_many_args ();
if (__builtin_constant_p (__oflag)) { if ((__oflag & O_CREAT) != 0 && __va_arg_pack_len () < 1) { __open_missing_mode (); return __open_2 (__path, __oflag); } return __open_alias (__path, __oflag, __va_arg_pack ()); }
if (__va_arg_pack_len () < 1) return __open_2 (__path, __oflag);
return __open_alias (__path, __oflag, __va_arg_pack ()); }
|
Last edited by salass00 on 10-Jan-2014 at 08:04 PM.
|