Mercurial > hg > xemacs-beta
comparison src/lisp.h @ 5475:248176c74e6b
Merge with trunk.
author | Mats Lidell <matsl@xemacs.org> |
---|---|
date | Sat, 23 Apr 2011 23:47:13 +0200 |
parents | 4dee0387b9de e99b473303e3 |
children | b0d87f92e60b |
comparison
equal
deleted
inserted
replaced
5474:4dee0387b9de | 5475:248176c74e6b |
---|---|
2119 Lisp_Object elt, tail, tortoise_##elt; \ | 2119 Lisp_Object elt, tail, tortoise_##elt; \ |
2120 EMACS_INT len_##elt; \ | 2120 EMACS_INT len_##elt; \ |
2121 PRIVATE_EXTERNAL_LIST_LOOP_6 (elt, list, len_##elt, tail, \ | 2121 PRIVATE_EXTERNAL_LIST_LOOP_6 (elt, list, len_##elt, tail, \ |
2122 tortoise_##elt, CIRCULAR_LIST_SUSPICION_LENGTH) | 2122 tortoise_##elt, CIRCULAR_LIST_SUSPICION_LENGTH) |
2123 | 2123 |
2124 #define GC_EXTERNAL_LIST_LOOP_3(elt, list, tail) \ | |
2125 do { \ | |
2126 XGCDECL3 (elt); \ | |
2127 Lisp_Object elt, tail, tortoise_##elt; \ | |
2128 EMACS_INT len_##elt; \ | |
2129 XGCPRO3 (elt, elt, tail, tortoise_##elt); \ | |
2130 PRIVATE_EXTERNAL_LIST_LOOP_6 (elt, list, len_##elt, tail, \ | |
2131 tortoise_##elt, \ | |
2132 CIRCULAR_LIST_SUSPICION_LENGTH) | |
2133 | |
2124 #define EXTERNAL_LIST_LOOP_4_NO_DECLARE(elt, list, tail, len) \ | 2134 #define EXTERNAL_LIST_LOOP_4_NO_DECLARE(elt, list, tail, len) \ |
2125 Lisp_Object tortoise_##elt; \ | 2135 Lisp_Object tortoise_##elt; \ |
2126 PRIVATE_EXTERNAL_LIST_LOOP_6 (elt, list, len, tail, \ | 2136 PRIVATE_EXTERNAL_LIST_LOOP_6 (elt, list, len, tail, \ |
2127 tortoise_##elt, CIRCULAR_LIST_SUSPICION_LENGTH) | 2137 tortoise_##elt, CIRCULAR_LIST_SUSPICION_LENGTH) |
2128 | 2138 |
2129 #define EXTERNAL_LIST_LOOP_4(elt, list, tail, len) \ | 2139 #define EXTERNAL_LIST_LOOP_4(elt, list, tail, len) \ |
2130 Lisp_Object elt, tail, tortoise_##elt; \ | 2140 Lisp_Object elt, tail, tortoise_##elt; \ |
2131 EMACS_INT len; \ | 2141 EMACS_INT len; \ |
2132 PRIVATE_EXTERNAL_LIST_LOOP_6 (elt, list, len, tail, \ | 2142 PRIVATE_EXTERNAL_LIST_LOOP_6 (elt, list, len, tail, \ |
2133 tortoise_##elt, CIRCULAR_LIST_SUSPICION_LENGTH) | 2143 tortoise_##elt, CIRCULAR_LIST_SUSPICION_LENGTH) |
2144 | |
2145 #define GC_EXTERNAL_LIST_LOOP_4(elt, list, tail, len) \ | |
2146 do { \ | |
2147 XGCDECL3 (elt); \ | |
2148 Lisp_Object elt, tail, tortoise_##elt; \ | |
2149 XGCPRO3 (elt, elt, tail, tortoise_##elt); \ | |
2150 PRIVATE_EXTERNAL_LIST_LOOP_6 (elt, list, len, tail, \ | |
2151 tortoise_##elt, \ | |
2152 CIRCULAR_LIST_SUSPICION_LENGTH) | |
2134 | 2153 |
2135 #define PRIVATE_UNVERIFIED_LIST_LOOP_7(elt, list, len, hare, \ | 2154 #define PRIVATE_UNVERIFIED_LIST_LOOP_7(elt, list, len, hare, \ |
2136 tortoise, suspicion_length, \ | 2155 tortoise, suspicion_length, \ |
2137 signalp) \ | 2156 signalp) \ |
2138 for (tortoise = hare = list, len = 0; \ | 2157 for (tortoise = hare = list, len = 0; \ |