The C language definition leaves the sizes and layouts of types partially unspecified. When a C program makes assumptions about type layout, its semantics is defined only on platforms (C compilers and the underlying hardware) on which those assumptions hold. Previous work on formalizing C-like languages has ignored this issue, either by assuming that programs do not make such assumptions or by assuming that all valid programs target only one platform. In the latter case, the platform's choices are hard-wired in the language semantics.
No takes yet. Share an insight, caveat, or question.
Nita et al. (2008) studied this question.
Synapse has enriched 4 closely related papers on similar clinical questions. Consider them for comparative context: