
A discussion of flags embedded in the typecode struct ... v 0.1
by Michael Meeks (michael@ximian.com)	

	It is neccesary in the interests of performance to encode some
architecture specific information into each TypeCode; for example
calculating, the alignment of an arbitrary type can involve a somewhat
complex state machine with special cases for structures and unions.
Hence it is best to add the 'c_align' flag to the typecode, and
calculate this field for incoming typecodes.

	There are several other properties of a Type that are rather
interesting - particularly:

	* flatness - ie. it's in-memory representation as a C type
	  consists of a contiguous block of memory of determinate
	  length.

	* GIOP match - a pre-requisite of which is flatness,
	  that the size and alignment of the structure is identical
	  to that of the GIOP data representation.

	NB. all optimizations must pre-align.

	Also it would be lovely to have a size field for a flat
structure, so that we can use straight memcpys instead of recursive
copies when manipulating the structures.
