Fix enum ASCII claim and compound Name copy-paste error in format spec (#6610) (#6680)

Issue #6610: the Enumeration datatype's Names field claimed member
names are ASCII, though the reference implementation doesn't enforce
encoding; and the Compound datatype's Name field description was
copy-pasted from the Opaque datatype section.

- Compound Datatype Name field (Versions 1, 2, 3): describes the
  member name instead of the opaque-type description.
- Enumeration Datatype Names field (Versions 1/2, 3): drops the ASCII
  claim; documents the actual constraint (no NUL byte within the
  name) and that other encodings, such as UTF-8, aren't rejected.
This commit is contained in:
vchoi-hdfgroup
2026-09-23 17:52:00 -07:00
committed by GitHub
parent ae8919a117
commit b3291056e0
+15 -7
View File
@@ -6536,7 +6536,7 @@ versions of the HDF5 library from the 1.4 release onward.
</tr>
<tr>
<td>Name</td>
<td>This NUL-terminated string provides a description for the opaque type. It is NUL-padded to a
<td>This NUL-terminated string is the name of the member. It is NUL-padded to a
multiple of 8 bytes.</td>
</tr>
<tr>
@@ -6595,7 +6595,7 @@ versions of the HDF5 library from the 1.4 release onward.
</tr>
<tr>
<td>Name</td>
<td>This NUL-terminated string provides a description for the opaque type. It is NUL-padded to a multiple
<td>This NUL-terminated string is the name of the member. It is NUL-padded to a multiple
of 8 bytes.</td>
</tr>
<tr>
@@ -6635,7 +6635,7 @@ versions of the HDF5 library from the 1.4 release onward.
</tr>
<tr>
<td>Name</td>
<td>This NUL-terminated string provides a description for the opaque type. It is <em>not</em> NUL-padded to a
<td>This NUL-terminated string is the name of the member. It is <em>not</em> NUL-padded to a
multiple of 8 bytes.</td>
</tr>
<tr>
@@ -6798,8 +6798,12 @@ There are no properties defined for the reference class.
</tr>
<tr align="left" valign=top>
<td valign=top>Names</td>
<td valign=top>The name for each name/value pair. Each name is stored as a null terminated ASCII string
in a multiple of eight bytes. The names are in no particular order.</td>
<td valign=top>The name for each name/value pair. Each name is stored as a null terminated string
in a multiple of eight bytes. The format does not constrain the character encoding of the
string beyond disallowing a NUL byte within the name itself, since the format always appends
one as a terminator; the library has historically documented it as ASCII, but the reference
implementation does not reject other encodings, such as UTF-8. The names are in no particular
order.</td>
</tr>
<tr align="left" valign=top>
<td valign=top>Values</td>
@@ -6840,8 +6844,12 @@ There are no properties defined for the reference class.
</tr>
<tr align="left" valign=top>
<td valign=top>Names</td>
<td valign=top>The name for each name/value pair. Each name is stored as a null terminated ASCII string,
<em>not</em> padded to a multiple of eight bytes. The names are in no particular order.</td>
<td valign=top>The name for each name/value pair. Each name is stored as a null terminated string,
<em>not</em> padded to a multiple of eight bytes. The format does not constrain the character
encoding of the string beyond disallowing a NUL byte within the name itself, since the format
always appends one as a terminator; the library has historically documented it as ASCII, but
the reference implementation does not reject other encodings, such as UTF-8. The names are in
no particular order.</td>
</tr>
<tr align="left" valign=top>
<td valign=top>Values</td>