Commits

Jordan Rose committed 9df9ee9d727
[docs] LibraryEvolution: Weaken "fixed-layout" structs to "fixed-contents". This drops the requirement that a fixed-layout struct only contain fixed-size things (which wasn't specified correctly anyway). Slava and Dmitri both pointed out that the previous definition had several flaws, including not really scaling to generics. This reduced version only promises that stored instance properties won't be added, removed, or modified, which is still enough to do useful optimizations. And in most cases, we'll be able to infer the full "fixed-size" property of a type from this attribute anyway. The name "fixed-contents" was chosen to force us to pick a better name later. The next commit will bring back the "fixed-size" property as a performance assertion.