From: Ethan A M. <merritt@u.washington.edu> - 2004-05-04 06:21:13
|
On Monday 03 May 2004 10:22 pm, Lucas Hart wrote: > > What VMS and CRTL version do you have and do you generate DESCRIP.MMS > or BUILD.COM? OpenVMS 6.1-1h2 DEC C V5.0-003 I can't remember where to find a separate CRTL version. I told it @CONFIGURE.VMS DECC COM > > This syntax doesn't work because of the trailing semicolons. > > I propose to replace it with the standard work-around: > > #define GO(x) \ > > do {...} while (0) > > A simpler fix is > if (something) { > PRINT0(...); > } else if (something) { > PRINT1(...); > } The drawback there is that you have to know that PRINTn() is a macro rather than a function in order to write correct C code. The form I gave is preferable because once the macro is defined correctly then you don't have to worry about it elsewhere in the code. Also, changing the macro affects only the VMS build, whereas changing code elsewhere potentially affects all platforms. I made this change in cvs. > > Sure enough - both set.c and unset.c try to call strdup() directly > > rather than going through gp_strdup(). That fails if the system does > > not provide strdup(). Now fixed in cvs. > I fixed that by making the add_history() call in show.c conditional on > #ifdef READLINE > as it is in command.c Right. I have fixed that one in cvs also. > Try putting > #define HAVE_TIME_T_IN_TIME_H 1 > in config.h. > > Haven't assembled my source code changes into a patch file yet :-( I'm not going to touch the VMS configuration files per se; my VMS machine is old and hardly maintained, and I'm not about to spend any time on figuring out why it has configuration problems. I am more interested in it as just another quirky platform that reveals fixable coding errors. A couple of the TBOOLEAN error messages reveal actual code errors, for instance (arithmetic tests against 0 or 1 rather than logical tests). I am collecting these for a general code cleanup pass later on. -- Ethan A Merritt Department of Biochemistry & Biomolecular Structure Center University of Washington, Seattle |