Bruno Haible wrote:
John E. Malmberg wrote:
In lib/sys_stat.in :
The VMS DECC compiler needs to test the undefined macros with !defined.
What do you mean by this?
There is a bug where in some cases it does not work, particularly if
more than one undefined macro is present on an #if directive.
I do not have a reproducer handy.
1) What is the result of preprocessing (cc -E) code like this?
=========== foo.c ===========
#ifndef fooXYZZY
int dummy1;
#endif
#if !fooXYZZY
int dummy2;
#endif
=============================
That example is working for me. So I removed my changes to stat.in.h
and rebuilt the world.
The errors that I saw before are no longer present. So obviously no
changes are needed for stat.in.h
2) What is the definition of S_ISUID, S_ISGID, S_IREAD, S_IRUSR, S_IRGRP,
S_IROTH,
S_IWRITE, S_IWUSR, S_IWGRP, S_IWOTH, S_IEXEC, S_IXUSR, S_IXGRP, S_IXOTH,
S_IRWXU,
S_IRWXG, S_IRWXO, S_IXUGO on your system?
******************************
SYS$COMMON:[DECC$LIB.REFERENCE.DECC$RTLDEF]STAT.H;6
#define S_ISUID 0004000 /* set user id on execution */
#define S_ISGID 0002000 /* set group id on execution */
#define S_IRWXU 0000700 /* read,write,execute perm: owner */
#define S_IRUSR 0000400 /* read permission: owner */
#define S_IWUSR 0000200 /* write permission: owner */
#define S_IXUSR 0000100 /* execute/search permission: owner */
#define S_IRWXG 0000070 /* read,write,execute perm: group */
#define S_IRGRP 0000040 /* read permission: group */
#define S_IWGRP 0000020 /* write permission: group */
#define S_IXGRP 0000010 /* execute/search permission: group */
#define S_IRWXO 0000007 /* read,write,execute perm: other */
#define S_IROTH 0000004 /* read permission: other */
#define S_IWOTH 0000002 /* write permission: other */
#define S_IXOTH 0000001 /* execute/search permission: other */
# define S_IREAD 0000400 /* read permission, owner */
# define S_IWRITE 0000200 /* write permission, owner */
# define S_IEXEC 0000100 /* execute/search permission, owner */
-John
[EMAIL PROTECTED]
Personal Opinion Only