# HG changeset patch # User crestani # Date 1143760238 0 # Node ID 2f13ae1532dbb36918ceff1dcb5f239c7a0c492c # Parent 1ec58ab31874d55390eab1f79421b331d751f1c2 [xemacs-hg @ 2006-03-30 23:10:36 by crestani] * lisp.h (Dynarr_add): Add local variable imp to avoid VC6 internal compiler error. diff -r 1ec58ab31874 -r 2f13ae1532db src/ChangeLog --- a/src/ChangeLog Thu Mar 30 21:51:09 2006 +0000 +++ b/src/ChangeLog Thu Mar 30 23:10:38 2006 +0000 @@ -1,3 +1,8 @@ +2006-03-30 Adrian Aichner + + * lisp.h (Dynarr_add): Add local variable imp to avoid VC6 + internal compiler error. + 2006-03-26 Marcus Crestani * gc.c: Remove functions for explicitly-freed statistics diff -r 1ec58ab31874 -r 2f13ae1532db src/lisp.h --- a/src/lisp.h Thu Mar 30 21:51:09 2006 +0000 +++ b/src/lisp.h Thu Mar 30 23:10:38 2006 +0000 @@ -1612,14 +1612,14 @@ #ifdef NEW_GC #define Dynarr_add(d, el) \ do { \ + const struct lrecord_implementation *imp = (d)->lisp_imp; \ if (Dynarr_verify_mod (d)->cur >= (d)->max) \ Dynarr_resize ((d), (d)->cur+1); \ ((d)->base)[(d)->cur] = (el); \ \ - if ((d)->lisp_imp) \ + if (imp) \ set_lheader_implementation \ - ((struct lrecord_header *)&(((d)->base)[(d)->cur]), \ - (d)->lisp_imp); \ + ((struct lrecord_header *)&(((d)->base)[(d)->cur]), imp); \ \ (d)->cur++; \ if ((d)->cur > (d)->largest) \