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.