Bruno Haible wrote:

> Hi Jim,
>
>> The gnulib update induced a new (coreutils-specific) syntax-check failure:
>>
>>     src/system.h:# define ENODATA (-1)
>>     make[3]: *** [sc_prohibit_always-defined_macros] Error 1
>>
>> because gnulib now defines that symbol, so I have also removed
>> that definition from coreutils:
>>
>> -
>> -/* Some systems don't define this; POSIX mentions it but says it is
>> -   obsolete, so gnulib does not provide it either.  */
>> -#ifndef ENODATA
>> -# define ENODATA (-1)
>> -#endif
>> -
>
> Actually, gnulib's errno.h defines ENODATA only on native Windows systems,
> because MSVC 10 does it as well - to avoid interoperability problems.
> It doesn't guarantee the existence of this macro, and there is no intention
> that it does. ENODATA is not POSIX. It is merely an error code defined
> on _some_ systems. Just like EOTHER, ETOOMANYREFS, ENOSTR are error
> codes defined on _some_ systems.
>
> I would get rid of the syntax-check failure in a different way.

Oh!  Thank you.
I'll definitely revert that part.

Reply via email to