Changes between Version 3 and Version 4 of PMCUnionDeprecationTasklist
- Timestamp:
- 01/14/09 23:26:27 (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
PMCUnionDeprecationTasklist
v3 v4 15 15 Because the PMC union struct is part of a PMC's internals, its use is affected by PMC inheritance. The following image shows the dependencies between all *core* PMCs. This does not include PMCs from HLLs. Because of these dependencies, all PMCs in a given dependency tree will have to be updated simultaneously. This only means that all instances of e.g. PMC_struct_val will have to be updated, not all instances of all PMC_x_val. 16 16 [[Image(wiki:PMCUnionDeprecationTasklist:pmc_deps.png)]] 17 18 == Notes == 19 20 *Array PMCs need to have their mark VTABLE methods updated to actually mark the elements inside them. src/gc/mark_sweep.c:Parrot_gc_trace_pmc_data() attempts to do this by mucking around with PMC_data_typed(). Once the mark VTABLE methods are updated to do The Right Thing, Parrot_gc_trace_pmc_data() can be deprecated along with the PObj_data_is_PMC_array_FLAG. All arrays should instead be marked with PObj_custom_mark_FLAG to call the proper mark VTABLE methods.