In #561 it was agreed that we would keep the [[offset]] decorations in (pending user feedback).
Without [[layout]], the set of valid manual-layouts for a struct is the union of the layout rules allowed in that place, i.e.:
- Check if it works with std430, if yes 👍
- Check if it works with std140, if yes 👍
- Otherwise 👎
(Note it's not certain whether std430 will be allowed for uniform blocks. Some Vulkan devices can't support it.)
AFAIU: Explicit [[layout]] would essentially allow authors to choose among the available layouts (which right now is only 1 or 2 layouts, possibly depending on context).