Difference between revisions of "Void-safe migration guide"
Line 3: | Line 3: | ||
Migrating your code to be void-safe is quite easy if you follow the recommendations presented in this document. | Migrating your code to be void-safe is quite easy if you follow the recommendations presented in this document. | ||
− | ==Prepare migration using | + | ==Prepare migration using 6.3 or 6.4 with the compatibility option== |
Compile your code using and apply the following refactorings: | Compile your code using and apply the following refactorings: | ||
* Search for callers of <e>{CELL}.default_create</e> and replace it by calling <e>put</e> instead and providing a sensible default value. | * Search for callers of <e>{CELL}.default_create</e> and replace it by calling <e>put</e> instead and providing a sensible default value. |
Revision as of 14:48, 6 February 2009
Migrating your code to be void-safe is quite easy if you follow the recommendations presented in this document.
Prepare migration using 6.3 or 6.4 with the compatibility option
Compile your code using and apply the following refactorings:
- Search for callers of
{CELL}.default_create
and replace it by callingput
instead and providing a sensible default value. - Search for callers of
{READABLE_STRING_8}.make_from_c
and{READABLE_STRING_32}.make_from_c
. If you are using them as part of a creation instruction or a creation expression then nothing to be done. Otherwise we recommend you to replace the call by a call tofrom_c
. - Search for callers of
{C_STRING}.share_from_pointer
and{C_STRING}.share_from_pointer_and_count
and replace them bymake_shared_from_pointer
andmake_shared_from_pointer_and_count
when used as creation procedure, otherwise although it is ok to leave them as is, we recommend usingset_shared_from_pointer
andset_shared_from_pointer_and_count
.