Typesetter C

From Computer History Wiki
Revision as of 14:40, 15 May 2018 by Jnc (talk | contribs) (copyedit for clarity)
Jump to: navigation, search

Typesetter C (and variants thereof) is a name given to an extended version of C which appeared after V6 Unix, and its somewhat primitive (by modern standards) C and compiler thereof, was released; but before V7 Unixand its C/compiler. (The name was allegedly given to it because many of the extensions were needed for 'troff'.)

These were additions to the original Ritchie compiler of V6. Among the first round of changes to C for this version were:

  • Long integers
  • Unsigned integers
  • Inner blocks can have private local variables
  • Structures and other aggregates can be initialized
  • Local variables can be initialized
  • Bit fields
  • Macros with arguments (actually, this was in V6 C, but not documented)
  • Conditional compilation (again, present previously but not documented)
  • Function arguments can have 'register' type
  • 'typedef'
  • 'static' intra-file scope

The second round included:

  • Expressions in conditional compilation directives
  • Unions
  • Type coercions
  • Assignment operators ('+=', etc) have the character order reversed

For details, see the original notes (below).

External links