@subheading stringprep_utf8_to_ucs4
@anchor{stringprep_utf8_to_ucs4}
@deftypefun {uint32_t *} {stringprep_utf8_to_ucs4} (const char * @var{str}, ssize_t @var{len}, size_t * @var{items_written})
@var{str}: a UTF-8 encoded string

@var{len}: the maximum length of  @code{str} to use. If  @code{len} < 0, then
the string is nul-terminated.

@var{items_written}: location to store the number of characters in the
result, or @code{NULL} .

Convert a string from UTF-8 to a 32-bit fixed width representation
as UCS-4.  The function now performs error checking to verify that
the input is valid UTF-8 (before it was documented to not do error
checking).

Return value: a pointer to a newly allocated UCS-4 string.
This value must be deallocated by the caller.
@end deftypefun

