According to the current spec, they can't. But pretty much all the programming languages I know (Rust, Go, C++, Java, Python, Ruby, C [at least GCC]) allow you to define empty structs and/or classes. Sometimes it can be useful, such as for sentinel values. What if we allowed WIT records to be empty (no members)?