Indeed, my C++ background put me on the wrong track here.
Example
enum A: UInt32 {
case
a00, a01, a02, a03, a04, a05, a06, a07, a08, a09, a0a, a0b, a0c, a0d, a0e, a0f,
a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a1a, a1b, a1c, a1d, a1e, a1f,
a20, a21, a22, a23, a24, a25, a26, a27, a28, a29, a2a, a2b, a2c, a2d, a2e, a2f,
a30, a31, a32, a33, a34, a35, a36, a37, a38, a39, a3a, a3b, a3c, a3d, a3e, a3f,
a40, a41, a42, a43, a44, a45, a46, a47, a48, a49, a4a, a4b, a4c, a4d, a4e, a4f,
a50, a51, a52, a53, a54, a55, a56, a57, a58, a59, a5a, a5b, a5c, a5d, a5e, a5f,
a60, a61, a62, a63, a64, a65, a66, a67, a68, a69, a6a, a6b, a6c, a6d, a6e, a6f,
a70, a71, a72, a73, a74, a75, a76, a77, a78, a79, a7a, a7b, a7c, a7d, a7e, a7f,
a80, a81, a82, a83, a84, a85, a86, a87, a88, a89, a8a, a8b, a8c, a8d, a8e, a8f,
a90, a91, a92, a93, a94, a95, a96, a97, a98, a99, a9a, a9b, a9c, a9d, a9e, a9f,
aa0, aa1, aa2, aa3, aa4, aa5, aa6, aa7, aa8, aa9, aaa, aab, aac, aad, aae, aaf,
ab0, ab1, ab2, ab3, ab4, ab5, ab6, ab7, ab8, ab9, aba, abb, abc, abd, abe, abf,
ac0, ac1, ac2, ac3, ac4, ac5, ac6, ac7, ac8, ac9, aca, acb, acc, acd, ace, acf,
ad0, ad1, ad2, ad3, ad4, ad5, ad6, ad7, ad8, ad9, ada, adb, adc, add, ade, adf,
ae0, ae1, ae2, ae3, ae4, ae5, ae6, ae7, ae8, ae9, aea, aeb, aec, aed, aee, aef,
af0, af1, af2, af3, af4, af5, af6, af7, af8, af9, afa, afb, afc, afd, afe, a7fff = 0x7FFF
}
print(MemoryLayout<A>.size) // 1