Is is documented in the docstring:
scheme@(guile-user)> ,d make-struct-layout
- Scheme Procedure: make-struct-layout fields
Return a new structure layout object.
FIELDS must be a string made up of pairs of characters strung
together. The first character of each pair describes a field type,
the second a field protection. Allowed types are 'p' for
GC-protected Scheme data, 'u' for unprotected binary data. Allowed
protections are 'w' for normal fields or 'h' for hidden fields.
Hidden fields are writable, but they will not consume an
initializer arg passed to `make-struct'. They are useful to add
slots to a struct in a way that preserves backward-compatibility
with existing calls to `make-struct', especially for derived
vtables.