libctf: fix the type of ctf_enum.cte_value
authorNick Alcock <nick.alcock@oracle.com>
Mon, 3 Jun 2019 10:38:08 +0000 (11:38 +0100)
committerNick Alcock <nick.alcock@oracle.com>
Tue, 4 Jun 2019 16:05:08 +0000 (17:05 +0100)
This stops the file format from depending on the size of the host int.
(It does mean that we cannot encode enums with a value > 2^32 on
platforms with an int > 2^32: this will be fixed in the next format
revision.)

include/
* ctf.h (ctf_enum.cte_value): Fix type to int32_t.

include/ChangeLog
include/ctf.h

index 1f216b38218070655abb590ef2b9b6f2a42a9a31..f84498b590bd3ccd8e3dd72bfe33bad8633b652d 100644 (file)
@@ -1,3 +1,7 @@
+2019-06-03  Nick Alcock  <nick.alcock@oracle.com>
+
+       * ctf.h (ctf_enum.cte_value): Fix type to int32_t.
+
 2019-05-29  Nick Alcock  <nick.alcock@oracle.com>
 
        * ctf-api.h (ctf_sect_t): Drop cts_type, cts_flags, and cts_offset.
index 2c3384fe84afab601b5ad8f250a5da3a75b0bcc1..e99a673109c81bb309c4a768606dc2e5e5fb22da 100644 (file)
@@ -507,7 +507,7 @@ typedef struct ctf_lmember_v2
 typedef struct ctf_enum
 {
   uint32_t cte_name;           /* Reference to name in string table.  */
-  int cte_value;               /* Value associated with this name.  */
+  int32_t cte_value;           /* Value associated with this name.  */
 } ctf_enum_t;
 
 /* The ctf_archive is a collection of ctf_file_t's stored together. The format