Mercurial > emacs
view admin/notes/iftc @ 83509:24cf4bf418dc
Merged from emacs@sv.gnu.org
Patches applied:
* emacs@sv.gnu.org/emacs--devo--0--patch-207
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-208
Sync from erc--emacs--0
* emacs@sv.gnu.org/emacs--devo--0--patch-209
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-210
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-211
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-212
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-213
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-214
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-215
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-81
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-82
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-83
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-549
author | Karoly Lorentey <lorentey@elte.hu> |
---|---|
date | Wed, 12 Apr 2006 17:40:36 +0000 |
parents | 695cf19ef79e |
children | 375f2633d815 ef719132ddfa |
line wrap: on
line source
Iso-Functional Type Contour This is a term coined to describe "column int->float" change approach, and can be used whenever low-level types need to change (hopefully not often!) but the meanings of the values (whose type has changed) do not. The premise is that changing a low-level type potentially means lots of code needs to be changed as well, and the question is how to do this incrementally, which is the preferred way to change things. Say LOW and HIGH are C functions: int LOW (void) { return 1; } void HIGH (void) { int value = LOW (); } We want to convert LOW to return float, so we cast HIGH usage: float LOW (void) { return 1.0; } void HIGH (void) { int value = (int) LOW (); } /* iftc */ The comment /* iftc */ is used to mark this type of casting to differentiate it from other casting. We commit the changes and can now go about modifying LOW and HIGH separately. When HIGH is ready to handle the type change, the cast can be removed. ;;; arch-tag: 3309cc41-5d59-421b-b7be-c94b04083bb5