To: J3 10-203 From: Bill Long Subject: Interop TR: typedefs for cdesc members Date: 2010 September 07 Reference: 10-165r2.pdf Discussion: The present C descriptor contains multiple members that are expected to have small integer values. The present specification is that each of these is type int. It was proposed at meeting 192 that these should instead have implementation-defined types , as to potentially save space in the descriptor. The current list of members is rank, type, attribute, and state. Realistically, each of these could be as small as an 8-bit byte, and hence could be packed into a single word if desired. Edits are provided to add four new typedef identifiers, one for each of the current small integer members of the C descriptor. The identifiers correspond to standard integer types. If members are added to the C descriptor that have small integer values, those should have corresponding typedef identifiers. Edits to 10-165r2: [9:9] After "bounds_t, " add "typedef definitions for CFI_rank_t, CFI_type_t, CFI_attribute_t, and CFI_state_t, " [9:9] Delete "with type int". [9:27] Replace <> with <>. [9:28] At the end of the paragraph add a new sentence: "CFI_rank_t shall be a typedef identifier for a standard integer type capable of representing the largest supported rank." [9:29] Replace <> with <>. [9:31] At the end of the paragraph, add a new sentence: "CFI_type_t shall be a typedef identifier for a standard integer type capable of representing the values for the supported type specifiers." [9:32] Replace <> with <>. [9:34] At the end of the paragraph, add a new sentence: "CFI_attribute_t shall be a typedef identifier for a standard integer type capable of representing the values of the attribute codes." [9:35] Replace <> with <>. [9:36] At the end of the paragraph, add a new sentence: "CFI_state_t shall be a typedef identifier for a standard integer type."