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.