Changeset 662 for trunk/processor/struct.m4
- Timestamp:
- 2009-08-03T10:15:53+02:00 (4 years ago)
- File:
-
- 1 edited
-
trunk/processor/struct.m4 (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/processor/struct.m4
r534 r662 165 165 ') 166 166 dnl }}} 167 dnl {{{ STRUCT_ARRAY_I(1:count, 2:type, 3:elm, 4:name=type) 168 define(`STRUCT_ARRAY_I', ` 169 pushdef(`i', `ii') 170 STRUCT_ARRAY(`$1', `$2', `$3', `$4') 171 popdef(`i') 172 ') 173 dnl }}} 174 dnl {{{ STRUCT_ARRAY(1:count, 2:type, 3:elm, 4:name=type) 167 dnl {{{ STRUCT_ARRAY(1:count, 2:type, 3:elm, 4:name=type, 5:loopcounter) 175 168 define(`STRUCT_ARRAY', ` 176 169 if (src->$3) { 170 ifelse( 171 `$5', `', `int i; pushdef(`LOOPCOUNTER', `i')', 172 `', `', `pushdef(`LOOPCOUNTER', `$5')') 177 173 pushdefFUNC_NAME(`$2', `$4') 178 174 IFDASM(` … … 180 176 ALLOC_INIT_ZVAL(arr); 181 177 array_init(arr); 182 for ( i = 0; i < src->$1; i++) {178 for (LOOPCOUNTER = 0; LOOPCOUNTER < src->$1; LOOPCOUNTER ++) { 183 179 zval *zv; 184 180 185 181 ALLOC_INIT_ZVAL(zv); 186 182 array_init(zv); 187 FUNC_NAME (zv, &(src->$3[ i]) TSRMLS_CC);183 FUNC_NAME (zv, &(src->$3[LOOPCOUNTER]) TSRMLS_CC); 188 184 add_next_index_zval(arr, zv); 189 185 } … … 192 188 ALLOC(`dst->$3', `$2', `src->$1') 193 189 ifdef(`AFTER_ALLOC', AFTER_ALLOC) 194 for ( i = 0; i < src->$1; i++) {190 for (LOOPCOUNTER = 0; LOOPCOUNTER < src->$1; LOOPCOUNTER ++) { 195 191 DISABLECHECK(` 196 ifdef(`BEFORE_LOOP', `BEFORE_LOOP') 197 STRUCT(`$2', `$3[i]', `$4') 192 STRUCT(`$2', `$3[LOOPCOUNTER]', `$4') 198 193 ') 199 194 } … … 201 196 DONE(`$3') 202 197 popdef(`FUNC_NAME') 198 popdef(`LOOPCOUNTER') 203 199 } 204 200 else {
Note: See TracChangeset
for help on using the changeset viewer.

