Annotation of coherent/a/usr/man/ALL/portability, revision 1.1

1.1     ! root        1: 
        !             2: 
        !             3: portability           Technical Information           portability
        !             4: 
        !             5: 
        !             6: 
        !             7: 
        !             8: Portability means that code  can be recompiled and run under dif-
        !             9: ferent  computing  environments  without modification.   Although
        !            10: true portability  is an ideal  that is difficult  to realize, you
        !            11: can take a number of practical  steps to ensure that your code is
        !            12: portable:
        !            13: 
        !            14:    11.
        !            15:      Do not  assume that an  integer and a pointer  have the same
        !            16:      size.   Remember that  undeclared functions  are  assumed to
        !            17:      return an int.  If  a function returns a pointer, declare it
        !            18:      so.
        !            19: 
        !            20:    22.
        !            21:      Do not  write routines that depend on  a particular order of
        !            22:      code  evaluation, particular  byte  ordering, or  particular
        !            23:      length of data types.
        !            24: 
        !            25:    33.
        !            26:      Do  not write  routines that  play  tricks with  a machine's
        !            27:      ``magic  characters''; for example,  writing a  routine that
        !            28:      depends on a file's  ending with <ccttrrll-ZZ> instead of EEOOFF en-
        !            29:      sures that  that code can  run only under  operating systems
        !            30:      that recognize this magic character.
        !            31: 
        !            32:    44.
        !            33:      Always use  manifest constants, such  as EEOOFF, and  make full
        !            34:      use of #ddeeffiinnee statements.
        !            35: 
        !            36:    55.
        !            37:      Use header files  to hold all machine-dependent declarations
        !            38:      and definitions.
        !            39: 
        !            40:    66.
        !            41:      Declare  everything explicitly.  In  particular, be  sure to
        !            42:      declare functions  as vvooiidd  if they  do not return  a value;
        !            43:      this  avoids  unforeseen   problems  with  undefined  return
        !            44:      values.
        !            45: 
        !            46:    77.
        !            47:      Do not assume that  integers and pointers have the same size
        !            48:      or  even the  same kind  of structure.   Do not  assume that
        !            49:      pointers are  all the  same or  can point anywhere.   On the
        !            50:      i8086,  in SMALL  model a  pointer  to a  function addresses
        !            51:      relative to the code  segment, whereas a pointer to data ad-
        !            52:      dresses  relative to  the data  segment.  On  some machines,
        !            53:      character pointers are of a different size or structure than
        !            54:      word pointers.
        !            55: 
        !            56:    88.
        !            57:      The  constant NULL  is defined as  being different  from any
        !            58:      valid pointer.  Use it and nothing else for that purpose.
        !            59: 
        !            60: 
        !            61: 
        !            62: 
        !            63: 
        !            64: COHERENT Lexicon                                           Page 1
        !            65: 
        !            66: 
        !            67: 
        !            68: 
        !            69: portability           Technical Information           portability
        !            70: 
        !            71: 
        !            72: 
        !            73: ***** See Also *****
        !            74: 
        !            75: header file, pointer, technical information, void
        !            76: 
        !            77: 
        !            78: 
        !            79: 
        !            80: 
        !            81: 
        !            82: 
        !            83: 
        !            84: 
        !            85: 
        !            86: 
        !            87: 
        !            88: 
        !            89: 
        !            90: 
        !            91: 
        !            92: 
        !            93: 
        !            94: 
        !            95: 
        !            96: 
        !            97: 
        !            98: 
        !            99: 
        !           100: 
        !           101: 
        !           102: 
        !           103: 
        !           104: 
        !           105: 
        !           106: 
        !           107: 
        !           108: 
        !           109: 
        !           110: 
        !           111: 
        !           112: 
        !           113: 
        !           114: 
        !           115: 
        !           116: 
        !           117: 
        !           118: 
        !           119: 
        !           120: 
        !           121: 
        !           122: 
        !           123: 
        !           124: 
        !           125: 
        !           126: 
        !           127: 
        !           128: 
        !           129: 
        !           130: COHERENT Lexicon                                           Page 2
        !           131: 
        !           132: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.