Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Alpha and 3.1.2
- X-seq: zsh-workers 3558
- From: Sven Wischnowsky <wischnow@xxxxxxxxxxxxxxxxxxxxxxx>
- To: zsh-workers@xxxxxxxxxxxxxxx
- Subject: Alpha and 3.1.2
- Date: Wed, 8 Oct 1997 10:54:38 +0200 (MET DST)
Hi
Dunno if there was a patch for this before...
In 3.1.2 autoloaded functions are implemented by making them
(internally) functions which load themselves. For this there is a new
struct autofn and a corresponding description in utils.c.
This descriptions says that the struct has one extra integer that
should be copied in dupstruct2(). But in fact there is a pointer which
should be copied directly. Due to sizeof(int) != sizeof(Shfunc) on an
Alpha this doesn't copy the pointer, leaving it zero, causing a SEGV
later on.
The patch below is probably a bit simple (-minded), but it works.
Bye
Sven
*** utils.c.old Wed Oct 8 10:48:31 1997
--- utils.c Wed Oct 8 09:04:20 1997
***************
*** 1668,1674 ****
--- 1668,1678 ----
NT_SET(N_IF, 0, NT_NODE | NT_ARR, NT_NODE | NT_ARR, 0, 0),
NT_SET(N_WHILE, 1, NT_NODE, NT_NODE, 0, 0),
NT_SET(N_VARASG, 1, NT_STR, NT_STR, NT_STR | NT_LIST, 0),
+ #if SIZEOF_LONG == 8
+ NT_SET(N_AUTOFN, 3, 0, 0, 0, 0),
+ #else
NT_SET(N_AUTOFN, 1, 0, 0, 0, 0),
+ #endif
};
/**/
--
Sven Wischnowsky wischnow@xxxxxxxxxxxxxxxxxxxxxxx
Messages sorted by:
Reverse Date,
Date,
Thread,
Author