lacey@batcomputer.tn.cornell.edu (John Lacey) (07/21/89)
[We had problems with news here. I don't _think_ this is a reposting.]
I am trying to compile Jove 4.13 on a Gould running UTX/32 2.1.
I am currently using 4.12 (which I also compiled). The glitch is
that an == compare between pointer to functions is giving the compiler
grief. The only relevant lines that I can find (those involving
the commands variable, and the Forget function; see below) I have
changed back to their 4.12 versions (which, for example, lacked
the proto macro). This was no go either. I thought maybe our
compiler had changed (they did that to me before), but 4.12 still
compiles ok. I am using the same setup in tune.h and sysdep.h
in both versions.
I am one clueless morsel. Anybody have any ideas?
Line 346, below, is the one causing the problem. In version 4.12, the
c_proc member was defined as
void (*c_proc)();
but changing back to that has no discernible effect. macros.c is
virually unchanged from 4.12.
*** dataobj.h
struct cmd {
int Type;
char *Name;
void (*c_proc) proto((void));
#ifdef MAC
char c_map; /* prefix map for About Jove... */
char c_key; /* key binding for About Jove... */
#endif
};
*** end of dataobj.h
*** macros.c
331- void
332- Forget()
333- {
344- if (PrefChar(*cp))
345- m->m_len -= 2;
346: else if (commands[cp[1]].c_proc == Forget)
347- m->m_len -= 1;
348- } else
*** end of macros.c
--
John Lacey | cornell!batcomputer!lacey
lacey@tcgould.tn.cornell.edu | lacey@crnlthry.bitnet