poke-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH v2] pickles: Fix recently-introduced `in' related type errors


From: Arsen Arsenović
Subject: [PATCH v2] pickles: Fix recently-introduced `in' related type errors
Date: Tue, 25 Oct 2022 02:17:31 +0200

---
OK, here's a little fixup.  The changelog probably takes more attention to
check than the actual code, since I might've missed something, but I don't
think I did.

 ChangeLog              |  26 +++
 pickles/asn1-ber.pk    |  58 +++----
 pickles/bmp.pk         |   2 +-
 pickles/bpf.pk         |  14 +-
 pickles/coff-i386.pk   |  20 +--
 pickles/ctf.pk         |  30 ++--
 pickles/dwarf-expr.pk  | 364 ++++++++++++++++++++---------------------
 pickles/dwarf-frame.pk |  66 ++++----
 pickles/dwarf-info.pk  |   2 +-
 pickles/elf-64.pk      |   6 +-
 pickles/jffs2.pk       |  38 ++---
 pickles/pe.pk          |  90 +++++-----
 12 files changed, 377 insertions(+), 339 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 829a2b58..246682f7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,29 @@
+2022-10-25  Arsen Arsenović  <arsen@aarsen.me>
+
+       * pickles/dwarf-frame.pk: Set CFA constants to `uint<6>'
+       explicitly, to avoid `in' type errors.
+       * pickles/pe.pk: Set PE_DEBUG_TYPE constants to uint<32>,
+       PE_SUBSYS uint<16>, and cast alignemnt_info to uint<32> explicitly
+       to avoid `in' type errors.
+       * pickles/jffs2.pk: Se various constants to their right type
+       explicitly, to avoid `in' type errors.
+       * pickles/asn1-ber.pk: Explicitly set BER tags as uint<5>, to
+       avoid `in' type errors.
+       * pickles/dwarf-expr.pk: Explicitly set `DW_OP' constants to
+       uint<8>, to avoid `in' type errors.
+       * pickles/ctf.pk: Explicitly set kinds to uint<6>, to avoid `in'
+       type errors.
+       * pickles/coff-i386.pk: Explicitly set i386 relocation types to
+       uint<16>, to avoid `in' type error.
+       * pickles/dwarf-info.pk: Explicitly specify type in version
+       `constraint', to avoid `in' type error.
+       * pickles/elf-64.pk: Cast d_tag to int<32>, to avoid `in' type
+       errors.
+       * pickles/bpf.pk: Explicitly make instruction classes three-bit
+       uints.
+       * pickles/bmp.pk: Use unsigned offsets explicitly, to match header
+       type.
+
 2022-10-23  Arsen Arsenović  <arsen@aarsen.me>
 
         * doc/gen-pvm-insns.sh (SUBSECTIONS): Emit @pvindex calls for
diff --git a/pickles/asn1-ber.pk b/pickles/asn1-ber.pk
index b38d3472..b426b3ae 100644
--- a/pickles/asn1-ber.pk
+++ b/pickles/asn1-ber.pk
@@ -23,35 +23,35 @@
    ASN-1 types.  Note that I didn't find these in the standard, but in
    https://www.obj-sys.com/asn1tutorial/node124.html */
 
-var BER_TAG_RESERVED = 0,
-    BER_TAG_BOOLEAN = 1,
-    BER_TAG_INTEGER = 2,
-    BER_TAG_BIT_STRING = 3,
-    BER_TAG_OCTET_STRING = 4,
-    BER_TAG_NULL = 5,
-    BER_TAG_OBJ_IDENTIFIER = 6,
-    BER_TAG_OBJ_DESCRIPTOR = 7,
-    BER_TAG_INSTANCE = 8,
-    BER_TAG_REAL = 9,
-    BER_TAG_ENUMERATED = 10,
-    BER_TAG_EMBEDDED_PDV = 11,
-    BER_TAG_UTF8_STRING = 12,
-    BER_TAG_RELATIVE_OID = 13,
-    BER_TAG_SEQUENCE = 16,
-    BER_TAG_SET = 17,
-    BER_TAG_NUMERIC_STRING = 18,
-    BER_TAG_PRINTABLE_STRING = 19,
-    BER_TAG_TELETEX_STRING = 20,
-    BER_TAG_VIDEOTEX_STRING = 21,
-    BER_TAG_IA5_STRING = 22,
-    BER_TAG_UTC_TIME = 23,
-    BER_TAG_GENERALIZED_TIME = 24,
-    BER_TAG_GRAPHIC_STRING = 25,
-    BER_TAG_VISIBLE_STRING = 26,
-    BER_TAG_GENERAL_STRING = 27,
-    BER_TAG_UNIVERSAL_STRING = 28,
-    BER_TAG_CHARACTER_STRING = 29,
-    BER_TAG_BMP_STRING = 30;
+var BER_TAG_RESERVED         = 0 as uint<5>,
+    BER_TAG_BOOLEAN          = 1 as uint<5>,
+    BER_TAG_INTEGER          = 2 as uint<5>,
+    BER_TAG_BIT_STRING       = 3 as uint<5>,
+    BER_TAG_OCTET_STRING     = 4 as uint<5>,
+    BER_TAG_NULL             = 5 as uint<5>,
+    BER_TAG_OBJ_IDENTIFIER   = 6 as uint<5>,
+    BER_TAG_OBJ_DESCRIPTOR   = 7 as uint<5>,
+    BER_TAG_INSTANCE         = 8 as uint<5>,
+    BER_TAG_REAL             = 9 as uint<5>,
+    BER_TAG_ENUMERATED       = 10 as uint<5>,
+    BER_TAG_EMBEDDED_PDV     = 11 as uint<5>,
+    BER_TAG_UTF8_STRING      = 12 as uint<5>,
+    BER_TAG_RELATIVE_OID     = 13 as uint<5>,
+    BER_TAG_SEQUENCE         = 16 as uint<5>,
+    BER_TAG_SET              = 17 as uint<5>,
+    BER_TAG_NUMERIC_STRING   = 18 as uint<5>,
+    BER_TAG_PRINTABLE_STRING = 19 as uint<5>,
+    BER_TAG_TELETEX_STRING   = 20 as uint<5>,
+    BER_TAG_VIDEOTEX_STRING  = 21 as uint<5>,
+    BER_TAG_IA5_STRING       = 22 as uint<5>,
+    BER_TAG_UTC_TIME         = 23 as uint<5>,
+    BER_TAG_GENERALIZED_TIME = 24 as uint<5>,
+    BER_TAG_GRAPHIC_STRING   = 25 as uint<5>,
+    BER_TAG_VISIBLE_STRING   = 26 as uint<5>,
+    BER_TAG_GENERAL_STRING   = 27 as uint<5>,
+    BER_TAG_UNIVERSAL_STRING = 28 as uint<5>,
+    BER_TAG_CHARACTER_STRING = 29 as uint<5>,
+    BER_TAG_BMP_STRING       = 30 as uint<5>;
 
 var ber_tag_name = [
   "RESERVED", "boolean", "integer", "bit string", "octet string",
diff --git a/pickles/bmp.pk b/pickles/bmp.pk
index 5d940a8c..3945b8ca 100644
--- a/pickles/bmp.pk
+++ b/pickles/bmp.pk
@@ -24,7 +24,7 @@ var BI_RGB = 0,  /* No compression.  */
 
 /* The size of the info header depends on the type of BMP file.  */
 
-var IHS_BMP_V2 = 12#B, IHS_BMP_V3 = 40#B;
+var IHS_BMP_V2 = 12U#B, IHS_BMP_V3 = 40U#B;
 
 type BMP_Header =
   struct
diff --git a/pickles/bpf.pk b/pickles/bpf.pk
index 4b92d617..d8f6874e 100644
--- a/pickles/bpf.pk
+++ b/pickles/bpf.pk
@@ -23,13 +23,13 @@
 
 type BPF_Insn_Class = uint<3>;
 
-var BPF_INSN_CLASS_LD  = 0b000,
-    BPF_INSN_CLASS_LDX = 0b001,
-    BPF_INSN_CLASS_ST  = 0b010,
-    BPF_INSN_CLASS_STX = 0b011,
-    BPF_INSN_CLASS_ALU = 0b100,
-    BPF_INSN_CLASS_JMP = 0b101,
-    BPF_INSN_CLASS_ALU64 = 0b111;
+var BPF_INSN_CLASS_LD    = 0b000 as uint<3>,
+    BPF_INSN_CLASS_LDX   = 0b001 as uint<3>,
+    BPF_INSN_CLASS_ST    = 0b010 as uint<3>,
+    BPF_INSN_CLASS_STX   = 0b011 as uint<3>,
+    BPF_INSN_CLASS_ALU   = 0b100 as uint<3>,
+    BPF_INSN_CLASS_JMP   = 0b101 as uint<3>,
+    BPF_INSN_CLASS_ALU64 = 0b111 as uint<3>;
 
 fun bpf_class_is_alujmp = (uint<3> class) int:
   {
diff --git a/pickles/coff-i386.pk b/pickles/coff-i386.pk
index db5243ac..75122ac2 100644
--- a/pickles/coff-i386.pk
+++ b/pickles/coff-i386.pk
@@ -42,16 +42,16 @@ coff_magic_numbers
 
 /* i386 COFF relocations.  */
 
-var COFF_I386_R_DIR32 = 6,
-    COFF_I386_R_IMAGEBASE = 7,
-    COFF_I386_R_SECTION = 10,
-    COFF_I386_R_SECREL32 = 11,
-    COFF_I386_R_RELBYTE = 15,
-    COFF_I386_R_RELWORD = 16,
-    COFF_I386_R_RELLONG = 17,
-    COFF_I386_R_PCRBYTE = 18,
-    COFF_I386_R_PCRWORD = 19,
-    COFF_I386_R_PCRLONG = 20;
+var COFF_I386_R_DIR32     = 6UH,
+    COFF_I386_R_IMAGEBASE = 7UH,
+    COFF_I386_R_SECTION   = 10UH,
+    COFF_I386_R_SECREL32  = 11UH,
+    COFF_I386_R_RELBYTE   = 15UH,
+    COFF_I386_R_RELWORD   = 16UH,
+    COFF_I386_R_RELLONG   = 17UH,
+    COFF_I386_R_PCRBYTE   = 18UH,
+    COFF_I386_R_PCRWORD   = 19UH,
+    COFF_I386_R_PCRLONG   = 20UH;
 
 var coff_i386_relocs =
   [ COFF_I386_R_DIR32, COFF_I386_R_IMAGEBASE,
diff --git a/pickles/ctf.pk b/pickles/ctf.pk
index 683a65cc..45f01c1f 100644
--- a/pickles/ctf.pk
+++ b/pickles/ctf.pk
@@ -48,21 +48,21 @@ var CTF_K_UNKNOWN  = 0U,
 var CTF_STRTAB_0 = 0; /* Name is in the in-CTF string table.  */
 var CTF_STRTAB_1 = 1; /* Name is in an ELF strtab.  */
 
-var CTF_KIND_UNKNOWN  = 0,
-    CTF_KIND_INTEGER  = 1,
-    CTF_KIND_FLOAT    = 2,
-    CTF_KIND_POINTER  = 3,
-    CTF_KIND_ARRAY    = 4,
-    CTF_KIND_FUNCTION = 5,
-    CTF_KIND_STRUCT   = 6,
-    CTF_KIND_UNION    = 7,
-    CTF_KIND_ENUM     = 8,
-    CTF_KIND_FORWARD  = 9,
-    CTF_KIND_TYPEDEF  = 10,
-    CTF_KIND_VOLATILE = 11,
-    CTF_KIND_CONST    = 12,
-    CTF_KIND_RESTRICT = 13,
-    CTF_KIND_SLICE    = 14;
+var CTF_KIND_UNKNOWN  = 0 as uint<6>,
+    CTF_KIND_INTEGER  = 1 as uint<6>,
+    CTF_KIND_FLOAT    = 2 as uint<6>,
+    CTF_KIND_POINTER  = 3 as uint<6>,
+    CTF_KIND_ARRAY    = 4 as uint<6>,
+    CTF_KIND_FUNCTION = 5 as uint<6>,
+    CTF_KIND_STRUCT   = 6 as uint<6>,
+    CTF_KIND_UNION    = 7 as uint<6>,
+    CTF_KIND_ENUM     = 8 as uint<6>,
+    CTF_KIND_FORWARD  = 9 as uint<6>,
+    CTF_KIND_TYPEDEF  = 10 as uint<6>,
+    CTF_KIND_VOLATILE = 11 as uint<6>,
+    CTF_KIND_CONST    = 12 as uint<6>,
+    CTF_KIND_RESTRICT = 13 as uint<6>,
+    CTF_KIND_SLICE    = 14 as uint<6>;
 
 var ctf_kind_str =
   ["unknown", "integer", "float", "pointer", "array",
diff --git a/pickles/dwarf-expr.pk b/pickles/dwarf-expr.pk
index d3627092..79baa95b 100644
--- a/pickles/dwarf-expr.pk
+++ b/pickles/dwarf-expr.pk
@@ -21,190 +21,190 @@ load leb128;
 
 /* Opcodes.  */
 
-var DW_OP_FIRST = 0x03,
-    DW_OP_addr = 0x03,
-    DW_OP_deref = 0x06,
-    DW_OP_const1u = 0x08,
-    DW_OP_const1s = 0x09,
-    DW_OP_const2u = 0x0a,
-    DW_OP_const2s = 0x0b,
-    DW_OP_const4u = 0x0c,
-    DW_OP_const4s = 0x0d,
-    DW_OP_const8u = 0x0e,
-    DW_OP_const8s = 0x0f,
-    DW_OP_constu = 0x10,
-    DW_OP_consts = 0x11,
-    DW_OP_dup = 0x12,
-    DW_OP_drop = 0x13,
-    DW_OP_over = 0x14,
-    DW_OP_pick = 0x15,
-    DW_OP_swap = 0x16,
-    DW_OP_rot = 0x17,
-    DW_OP_xderef = 0x18,
-    DW_OP_abs = 0x19,
-    DW_OP_and = 0x1a,
-    DW_OP_div = 0x1b,
-    DW_OP_minus = 0x1c,
-    DW_OP_mod = 0x1d,
-    DW_OP_mul = 0x1e,
-    DW_OP_neg = 0x1f,
-    DW_OP_not = 0x20,
-    DW_OP_or = 0x21,
-    DW_OP_plus = 0x22,
-    DW_OP_plus_uconst = 0x23,
-    DW_OP_shl = 0x24,
-    DW_OP_shr = 0x25,
-    DW_OP_shra = 0x26,
-    DW_OP_xor = 0x27,
-    DW_OP_bra = 0x28,
-    DW_OP_eq = 0x29,
-    DW_OP_ge = 0x2a,
-    DW_OP_gt = 0x2b,
-    DW_OP_le = 0x2c,
-    DW_OP_lt = 0x2d,
-    DW_OP_ne = 0x2e,
-    DW_OP_skip = 0x2f,
-    DW_OP_lit0 = 0x30,
-    DW_OP_lit1 = 0x31,
-    DW_OP_lit2 = 0x32,
-    DW_OP_lit3 = 0x33,
-    DW_OP_lit4 = 0x34,
-    DW_OP_lit5 = 0x35,
-    DW_OP_lit6 = 0x36,
-    DW_OP_lit7 = 0x37,
-    DW_OP_lit8 = 0x38,
-    DW_OP_lit9 = 0x39,
-    DW_OP_lit10 = 0x3a,
-    DW_OP_lit11 = 0x3b,
-    DW_OP_lit12 = 0x3c,
-    DW_OP_lit13 = 0x3d,
-    DW_OP_lit14 = 0x3e,
-    DW_OP_lit15 = 0x3f,
-    DW_OP_lit16 = 0x40,
-    DW_OP_lit17 = 0x41,
-    DW_OP_lit18 = 0x42,
-    DW_OP_lit19 = 0x43,
-    DW_OP_lit20 = 0x44,
-    DW_OP_lit21 = 0x45,
-    DW_OP_lit22 = 0x46,
-    DW_OP_lit23 = 0x47,
-    DW_OP_lit24 = 0x48,
-    DW_OP_lit25 = 0x49,
-    DW_OP_lit26 = 0x4a,
-    DW_OP_lit27 = 0x4b,
-    DW_OP_lit28 = 0x4c,
-    DW_OP_lit29 = 0x4d,
-    DW_OP_lit30 = 0x4e,
-    DW_OP_lit31 = 0x4f,
-    DW_OP_reg0 = 0x50,
-    DW_OP_reg1 = 0x51,
-    DW_OP_reg2 = 0x52,
-    DW_OP_reg3 = 0x53,
-    DW_OP_reg4 = 0x54,
-    DW_OP_reg5 = 0x55,
-    DW_OP_reg6 = 0x56,
-    DW_OP_reg7 = 0x57,
-    DW_OP_reg8 = 0x58,
-    DW_OP_reg9 = 0x59,
-    DW_OP_reg10 = 0x5a,
-    DW_OP_reg11 = 0x5b,
-    DW_OP_reg12 = 0x5c,
-    DW_OP_reg13 = 0x5d,
-    DW_OP_reg14 = 0x5e,
-    DW_OP_reg15 = 0x5f,
-    DW_OP_reg16 = 0x60,
-    DW_OP_reg17 = 0x61,
-    DW_OP_reg18 = 0x62,
-    DW_OP_reg19 = 0x63,
-    DW_OP_reg20 = 0x64,
-    DW_OP_reg21 = 0x65,
-    DW_OP_reg22 = 0x66,
-    DW_OP_reg23 = 0x67,
-    DW_OP_reg24 = 0x68,
-    DW_OP_reg25 = 0x69,
-    DW_OP_reg26 = 0x6a,
-    DW_OP_reg27 = 0x6b,
-    DW_OP_reg28 = 0x6c,
-    DW_OP_reg29 = 0x6d,
-    DW_OP_reg30 = 0x6e,
-    DW_OP_reg31 = 0x6f,
-    DW_OP_breg0 = 0x70,
-    DW_OP_breg1 = 0x71,
-    DW_OP_breg2 = 0x72,
-    DW_OP_breg3 = 0x73,
-    DW_OP_breg4 = 0x74,
-    DW_OP_breg5 = 0x75,
-    DW_OP_breg6 = 0x76,
-    DW_OP_breg7 = 0x77,
-    DW_OP_breg8 = 0x78,
-    DW_OP_breg9 = 0x79,
-    DW_OP_breg10 = 0x7a,
-    DW_OP_breg11 = 0x7b,
-    DW_OP_breg12 = 0x7c,
-    DW_OP_breg13 = 0x7d,
-    DW_OP_breg14 = 0x7e,
-    DW_OP_breg15 = 0x7f,
-    DW_OP_breg16 = 0x80,
-    DW_OP_breg17 = 0x81,
-    DW_OP_breg18 = 0x82,
-    DW_OP_breg19 = 0x83,
-    DW_OP_breg20 = 0x84,
-    DW_OP_breg21 = 0x85,
-    DW_OP_breg22 = 0x86,
-    DW_OP_breg23 = 0x87,
-    DW_OP_breg24 = 0x88,
-    DW_OP_breg25 = 0x89,
-    DW_OP_breg26 = 0x8a,
-    DW_OP_breg27 = 0x8b,
-    DW_OP_breg28 = 0x8c,
-    DW_OP_breg29 = 0x8d,
-    DW_OP_breg30 = 0x8e,
-    DW_OP_breg31 = 0x8f,
-    DW_OP_regx = 0x90,
-    DW_OP_fbreg = 0x91,
-    DW_OP_bregx = 0x92,
-    DW_OP_piece = 0x93,
-    DW_OP_deref_size = 0x94,
-    DW_OP_xderef_size = 0x95,
-    DW_OP_nop = 0x96,
-    DW_OP_push_object_address = 0x97,
-    DW_OP_call2 = 0x98,
-    DW_OP_call4 = 0x99,
-    DW_OP_call_ref = 0x9a,
-    DW_OP_form_tls_address = 0x9b,
-    DW_OP_call_frame_cfa = 0x9c,
-    DW_OP_bit_piece = 0x9d,
-    DW_OP_implicit_value = 0x9e,
-    DW_OP_stack_value = 0x9f,
-    DW_OP_implicit_pointer = 0xa0,
-    DW_OP_addrx = 0xa1,
-    DW_OP_constx = 0xa2,
-    DW_OP_entry_value = 0xa3,
-    DW_OP_const_type = 0xa4,
-    DW_OP_regval_type = 0xa5,
-    DW_OP_deref_type = 0xa6,
-    DW_OP_xderef_type = 0xa7,
-    DW_OP_convert = 0xa8,
-    DW_OP_reinterpret = 0xa9,
+var DW_OP_FIRST                = 0x03 as uint<8>,
+    DW_OP_addr                 = 0x03 as uint<8>,
+    DW_OP_deref                = 0x06 as uint<8>,
+    DW_OP_const1u              = 0x08 as uint<8>,
+    DW_OP_const1s              = 0x09 as uint<8>,
+    DW_OP_const2u              = 0x0a as uint<8>,
+    DW_OP_const2s              = 0x0b as uint<8>,
+    DW_OP_const4u              = 0x0c as uint<8>,
+    DW_OP_const4s              = 0x0d as uint<8>,
+    DW_OP_const8u              = 0x0e as uint<8>,
+    DW_OP_const8s              = 0x0f as uint<8>,
+    DW_OP_constu               = 0x10 as uint<8>,
+    DW_OP_consts               = 0x11 as uint<8>,
+    DW_OP_dup                  = 0x12 as uint<8>,
+    DW_OP_drop                 = 0x13 as uint<8>,
+    DW_OP_over                 = 0x14 as uint<8>,
+    DW_OP_pick                 = 0x15 as uint<8>,
+    DW_OP_swap                 = 0x16 as uint<8>,
+    DW_OP_rot                  = 0x17 as uint<8>,
+    DW_OP_xderef               = 0x18 as uint<8>,
+    DW_OP_abs                  = 0x19 as uint<8>,
+    DW_OP_and                  = 0x1a as uint<8>,
+    DW_OP_div                  = 0x1b as uint<8>,
+    DW_OP_minus                = 0x1c as uint<8>,
+    DW_OP_mod                  = 0x1d as uint<8>,
+    DW_OP_mul                  = 0x1e as uint<8>,
+    DW_OP_neg                  = 0x1f as uint<8>,
+    DW_OP_not                  = 0x20 as uint<8>,
+    DW_OP_or                   = 0x21 as uint<8>,
+    DW_OP_plus                 = 0x22 as uint<8>,
+    DW_OP_plus_uconst          = 0x23 as uint<8>,
+    DW_OP_shl                  = 0x24 as uint<8>,
+    DW_OP_shr                  = 0x25 as uint<8>,
+    DW_OP_shra                 = 0x26 as uint<8>,
+    DW_OP_xor                  = 0x27 as uint<8>,
+    DW_OP_bra                  = 0x28 as uint<8>,
+    DW_OP_eq                   = 0x29 as uint<8>,
+    DW_OP_ge                   = 0x2a as uint<8>,
+    DW_OP_gt                   = 0x2b as uint<8>,
+    DW_OP_le                   = 0x2c as uint<8>,
+    DW_OP_lt                   = 0x2d as uint<8>,
+    DW_OP_ne                   = 0x2e as uint<8>,
+    DW_OP_skip                 = 0x2f as uint<8>,
+    DW_OP_lit0                 = 0x30 as uint<8>,
+    DW_OP_lit1                 = 0x31 as uint<8>,
+    DW_OP_lit2                 = 0x32 as uint<8>,
+    DW_OP_lit3                 = 0x33 as uint<8>,
+    DW_OP_lit4                 = 0x34 as uint<8>,
+    DW_OP_lit5                 = 0x35 as uint<8>,
+    DW_OP_lit6                 = 0x36 as uint<8>,
+    DW_OP_lit7                 = 0x37 as uint<8>,
+    DW_OP_lit8                 = 0x38 as uint<8>,
+    DW_OP_lit9                 = 0x39 as uint<8>,
+    DW_OP_lit10                = 0x3a as uint<8>,
+    DW_OP_lit11                = 0x3b as uint<8>,
+    DW_OP_lit12                = 0x3c as uint<8>,
+    DW_OP_lit13                = 0x3d as uint<8>,
+    DW_OP_lit14                = 0x3e as uint<8>,
+    DW_OP_lit15                = 0x3f as uint<8>,
+    DW_OP_lit16                = 0x40 as uint<8>,
+    DW_OP_lit17                = 0x41 as uint<8>,
+    DW_OP_lit18                = 0x42 as uint<8>,
+    DW_OP_lit19                = 0x43 as uint<8>,
+    DW_OP_lit20                = 0x44 as uint<8>,
+    DW_OP_lit21                = 0x45 as uint<8>,
+    DW_OP_lit22                = 0x46 as uint<8>,
+    DW_OP_lit23                = 0x47 as uint<8>,
+    DW_OP_lit24                = 0x48 as uint<8>,
+    DW_OP_lit25                = 0x49 as uint<8>,
+    DW_OP_lit26                = 0x4a as uint<8>,
+    DW_OP_lit27                = 0x4b as uint<8>,
+    DW_OP_lit28                = 0x4c as uint<8>,
+    DW_OP_lit29                = 0x4d as uint<8>,
+    DW_OP_lit30                = 0x4e as uint<8>,
+    DW_OP_lit31                = 0x4f as uint<8>,
+    DW_OP_reg0                 = 0x50 as uint<8>,
+    DW_OP_reg1                 = 0x51 as uint<8>,
+    DW_OP_reg2                 = 0x52 as uint<8>,
+    DW_OP_reg3                 = 0x53 as uint<8>,
+    DW_OP_reg4                 = 0x54 as uint<8>,
+    DW_OP_reg5                 = 0x55 as uint<8>,
+    DW_OP_reg6                 = 0x56 as uint<8>,
+    DW_OP_reg7                 = 0x57 as uint<8>,
+    DW_OP_reg8                 = 0x58 as uint<8>,
+    DW_OP_reg9                 = 0x59 as uint<8>,
+    DW_OP_reg10                = 0x5a as uint<8>,
+    DW_OP_reg11                = 0x5b as uint<8>,
+    DW_OP_reg12                = 0x5c as uint<8>,
+    DW_OP_reg13                = 0x5d as uint<8>,
+    DW_OP_reg14                = 0x5e as uint<8>,
+    DW_OP_reg15                = 0x5f as uint<8>,
+    DW_OP_reg16                = 0x60 as uint<8>,
+    DW_OP_reg17                = 0x61 as uint<8>,
+    DW_OP_reg18                = 0x62 as uint<8>,
+    DW_OP_reg19                = 0x63 as uint<8>,
+    DW_OP_reg20                = 0x64 as uint<8>,
+    DW_OP_reg21                = 0x65 as uint<8>,
+    DW_OP_reg22                = 0x66 as uint<8>,
+    DW_OP_reg23                = 0x67 as uint<8>,
+    DW_OP_reg24                = 0x68 as uint<8>,
+    DW_OP_reg25                = 0x69 as uint<8>,
+    DW_OP_reg26                = 0x6a as uint<8>,
+    DW_OP_reg27                = 0x6b as uint<8>,
+    DW_OP_reg28                = 0x6c as uint<8>,
+    DW_OP_reg29                = 0x6d as uint<8>,
+    DW_OP_reg30                = 0x6e as uint<8>,
+    DW_OP_reg31                = 0x6f as uint<8>,
+    DW_OP_breg0                = 0x70 as uint<8>,
+    DW_OP_breg1                = 0x71 as uint<8>,
+    DW_OP_breg2                = 0x72 as uint<8>,
+    DW_OP_breg3                = 0x73 as uint<8>,
+    DW_OP_breg4                = 0x74 as uint<8>,
+    DW_OP_breg5                = 0x75 as uint<8>,
+    DW_OP_breg6                = 0x76 as uint<8>,
+    DW_OP_breg7                = 0x77 as uint<8>,
+    DW_OP_breg8                = 0x78 as uint<8>,
+    DW_OP_breg9                = 0x79 as uint<8>,
+    DW_OP_breg10               = 0x7a as uint<8>,
+    DW_OP_breg11               = 0x7b as uint<8>,
+    DW_OP_breg12               = 0x7c as uint<8>,
+    DW_OP_breg13               = 0x7d as uint<8>,
+    DW_OP_breg14               = 0x7e as uint<8>,
+    DW_OP_breg15               = 0x7f as uint<8>,
+    DW_OP_breg16               = 0x80 as uint<8>,
+    DW_OP_breg17               = 0x81 as uint<8>,
+    DW_OP_breg18               = 0x82 as uint<8>,
+    DW_OP_breg19               = 0x83 as uint<8>,
+    DW_OP_breg20               = 0x84 as uint<8>,
+    DW_OP_breg21               = 0x85 as uint<8>,
+    DW_OP_breg22               = 0x86 as uint<8>,
+    DW_OP_breg23               = 0x87 as uint<8>,
+    DW_OP_breg24               = 0x88 as uint<8>,
+    DW_OP_breg25               = 0x89 as uint<8>,
+    DW_OP_breg26               = 0x8a as uint<8>,
+    DW_OP_breg27               = 0x8b as uint<8>,
+    DW_OP_breg28               = 0x8c as uint<8>,
+    DW_OP_breg29               = 0x8d as uint<8>,
+    DW_OP_breg30               = 0x8e as uint<8>,
+    DW_OP_breg31               = 0x8f as uint<8>,
+    DW_OP_regx                 = 0x90 as uint<8>,
+    DW_OP_fbreg                = 0x91 as uint<8>,
+    DW_OP_bregx                = 0x92 as uint<8>,
+    DW_OP_piece                = 0x93 as uint<8>,
+    DW_OP_deref_size           = 0x94 as uint<8>,
+    DW_OP_xderef_size          = 0x95 as uint<8>,
+    DW_OP_nop                  = 0x96 as uint<8>,
+    DW_OP_push_object_address  = 0x97 as uint<8>,
+    DW_OP_call2                = 0x98 as uint<8>,
+    DW_OP_call4                = 0x99 as uint<8>,
+    DW_OP_call_ref             = 0x9a as uint<8>,
+    DW_OP_form_tls_address     = 0x9b as uint<8>,
+    DW_OP_call_frame_cfa       = 0x9c as uint<8>,
+    DW_OP_bit_piece            = 0x9d as uint<8>,
+    DW_OP_implicit_value       = 0x9e as uint<8>,
+    DW_OP_stack_value          = 0x9f as uint<8>,
+    DW_OP_implicit_pointer     = 0xa0 as uint<8>,
+    DW_OP_addrx                = 0xa1 as uint<8>,
+    DW_OP_constx               = 0xa2 as uint<8>,
+    DW_OP_entry_value          = 0xa3 as uint<8>,
+    DW_OP_const_type           = 0xa4 as uint<8>,
+    DW_OP_regval_type          = 0xa5 as uint<8>,
+    DW_OP_deref_type           = 0xa6 as uint<8>,
+    DW_OP_xderef_type          = 0xa7 as uint<8>,
+    DW_OP_convert              = 0xa8 as uint<8>,
+    DW_OP_reinterpret          = 0xa9 as uint<8>,
     /* GNU extensions.  */
-    DW_OP_GNU_push_tls_address = 0xe0,
-    DW_OP_GNU_uninit = 0xf0,
-    DW_OP_GNU_encoded_addr = 0xf1,
-    DW_OP_GNU_implicit_pointer = 0xf2,
-    DW_OP_GNU_entry_value = 0xf3,
-    DW_OP_GNU_const_type = 0xf4,
-    DW_OP_GNU_regval_type = 0xf5,
-    DW_OP_GNU_deref_type = 0xf6,
-    DW_OP_GNU_convert = 0xf7,
-    DW_OP_GNU_reinterpret = 0xf9,
-    DW_OP_GNU_parameter_ref = 0xfa,
+    DW_OP_GNU_push_tls_address = 0xe0 as uint<8>,
+    DW_OP_GNU_uninit           = 0xf0 as uint<8>,
+    DW_OP_GNU_encoded_addr     = 0xf1 as uint<8>,
+    DW_OP_GNU_implicit_pointer = 0xf2 as uint<8>,
+    DW_OP_GNU_entry_value      = 0xf3 as uint<8>,
+    DW_OP_GNU_const_type       = 0xf4 as uint<8>,
+    DW_OP_GNU_regval_type      = 0xf5 as uint<8>,
+    DW_OP_GNU_deref_type       = 0xf6 as uint<8>,
+    DW_OP_GNU_convert          = 0xf7 as uint<8>,
+    DW_OP_GNU_reinterpret      = 0xf9 as uint<8>,
+    DW_OP_GNU_parameter_ref    = 0xfa as uint<8>,
     /* GNU Debug Fission extensions.  */
-    DW_OP_GNU_addr_index = 0xfb,
-    DW_OP_GNU_const_index = 0xfc,
-    DW_OP_GNU_variable_value = 0xfd,
-    DW_OP_lo_user = 0xe0,
-    DW_OP_hi_user = 0xff,
-    DW_OP_LAST = DW_OP_hi_user;
+    DW_OP_GNU_addr_index       = 0xfb as uint<8>,
+    DW_OP_GNU_const_index      = 0xfc as uint<8>,
+    DW_OP_GNU_variable_value   = 0xfd as uint<8>,
+    DW_OP_lo_user              = 0xe0 as uint<8>,
+    DW_OP_hi_user              = 0xff as uint<8>,
+    DW_OP_LAST                 = DW_OP_hi_user;
 
 /* Each DWARF operation contains a 1-byte opcode that identifies the
    operation; followed by a variable number of arguments.  */
diff --git a/pickles/dwarf-frame.pk b/pickles/dwarf-frame.pk
index e429c5a0..41618f3f 100644
--- a/pickles/dwarf-frame.pk
+++ b/pickles/dwarf-frame.pk
@@ -23,39 +23,39 @@ load "dwarf-expr.pk"; /* For Dwarf_Op  */
 
 /* Call Frame Instructions.  */
 
-var DW_CFA_advance_loc = 0x40,
-    DW_CFA_offset = 0x80,
-    DW_CFA_restore = 0xc0,
-    DW_CFA_extended = 0,
-    DW_CFA_nop = 0x00,
-    DW_CFA_set_loc = 0x01,
-    DW_CFA_advance_loc1 = 0x02,
-    DW_CFA_advance_loc2 = 0x03,
-    DW_CFA_advance_loc4 = 0x04,
-    DW_CFA_offset_extended = 0x05,
-    DW_CFA_restore_extended = 0x06,
-    DW_CFA_undefined = 0x07,
-    DW_CFA_same_value = 0x08,
-    DW_CFA_register = 0x09,
-    DW_CFA_remember_state = 0x0a,
-    DW_CFA_restore_state = 0x0b,
-    DW_CFA_def_cfa = 0x0c,
-    DW_CFA_def_cfa_register = 0x0d,
-    DW_CFA_def_cfa_offset = 0x0e,
-    DW_CFA_def_cfa_expression = 0x0f,
-    DW_CFA_expression = 0x10,
-    DW_CFA_offset_extended_sf = 0x11,
-    DW_CFA_def_cfa_sf = 0x12,
-    DW_CFA_def_cfa_offset_sf = 0x13,
-    DW_CFA_val_offset = 0x14,
-    DW_CFA_val_offset_sf = 0x15,
-    DW_CFA_val_expression = 0x16,
-    DW_CFA_low_user = 0x1c,
-    DW_CFA_MIPS_advance_loc8 = 0x1d,
-    DW_CFA_GNU_window_save = 0x2d,
-    DW_CFA_GNU_args_size = 0x2e,
-    DW_CFA_GNU_negative_offset_extended = 0x2f,
-    DW_CFA_high_user = 0x3f;
+var DW_CFA_advance_loc                  = 0x40 as uint<6>,
+    DW_CFA_offset                       = 0x80 as uint<6>,
+    DW_CFA_restore                      = 0xc0 as uint<6>,
+    DW_CFA_extended                     = 0x00 as uint<6>,
+    DW_CFA_nop                          = 0x00 as uint<6>,
+    DW_CFA_set_loc                      = 0x01 as uint<6>,
+    DW_CFA_advance_loc1                 = 0x02 as uint<6>,
+    DW_CFA_advance_loc2                 = 0x03 as uint<6>,
+    DW_CFA_advance_loc4                 = 0x04 as uint<6>,
+    DW_CFA_offset_extended              = 0x05 as uint<6>,
+    DW_CFA_restore_extended             = 0x06 as uint<6>,
+    DW_CFA_undefined                    = 0x07 as uint<6>,
+    DW_CFA_same_value                   = 0x08 as uint<6>,
+    DW_CFA_register                     = 0x09 as uint<6>,
+    DW_CFA_remember_state               = 0x0a as uint<6>,
+    DW_CFA_restore_state                = 0x0b as uint<6>,
+    DW_CFA_def_cfa                      = 0x0c as uint<6>,
+    DW_CFA_def_cfa_register             = 0x0d as uint<6>,
+    DW_CFA_def_cfa_offset               = 0x0e as uint<6>,
+    DW_CFA_def_cfa_expression           = 0x0f as uint<6>,
+    DW_CFA_expression                   = 0x10 as uint<6>,
+    DW_CFA_offset_extended_sf           = 0x11 as uint<6>,
+    DW_CFA_def_cfa_sf                   = 0x12 as uint<6>,
+    DW_CFA_def_cfa_offset_sf            = 0x13 as uint<6>,
+    DW_CFA_val_offset                   = 0x14 as uint<6>,
+    DW_CFA_val_offset_sf                = 0x15 as uint<6>,
+    DW_CFA_val_expression               = 0x16 as uint<6>,
+    DW_CFA_low_user                     = 0x1c as uint<6>,
+    DW_CFA_MIPS_advance_loc8            = 0x1d as uint<6>,
+    DW_CFA_GNU_window_save              = 0x2d as uint<6>,
+    DW_CFA_GNU_args_size                = 0x2e as uint<6>,
+    DW_CFA_GNU_negative_offset_extended = 0x2f as uint<6>,
+    DW_CFA_high_user                    = 0x3f as uint<6>;
 
 type Dwarf_CFI =
   struct
diff --git a/pickles/dwarf-info.pk b/pickles/dwarf-info.pk
index 3b6899a3..4cb0d039 100644
--- a/pickles/dwarf-info.pk
+++ b/pickles/dwarf-info.pk
@@ -374,7 +374,7 @@ type Dwarf_CU_Header =
     Dwarf_Initial_Length unit_length;
 
     /* Version of the DWARF information for the compilation unit.  */
-    uint<16> version : (version in [2, 3, 4, 5]
+    uint<16> version : (version in [2UH, 3UH, 4UH, 5UH]
                         && dwarf_set_version (version));
 
     /* Offset into the .debug_abbrev section that associates the
diff --git a/pickles/elf-64.pk b/pickles/elf-64.pk
index 0f0bfadf..bf534f23 100644
--- a/pickles/elf-64.pk
+++ b/pickles/elf-64.pk
@@ -107,9 +107,9 @@ type Elf64_Dyn =
          data: even entries use d_ptr while odd entries use d_val.  */
 
         Elf64_Addr d_ptr
-          : (d_tag in [DT_PLTGOT, DT_HASH, DT_STRTAB, DT_SYMTAB, DT_RELA,
-                       DT_SYMENT, DT_INIT, DT_FINI, DT_REL, DT_JMPREL,
-                       DT_INIT_ARRAY, DT_FINI_ARRAY]
+          : (d_tag as int<32> in [DT_PLTGOT, DT_HASH, DT_STRTAB, DT_SYMTAB,
+                                  DT_RELA, DT_SYMENT, DT_INIT, DT_FINI, DT_REL,
+                                  DT_JMPREL, DT_INIT_ARRAY, DT_FINI_ARRAY]
              || (d_tag >= DT_ENCODING && d_tag %2 != 0));
 
         Elf64_Xword d_val;
diff --git a/pickles/jffs2.pk b/pickles/jffs2.pk
index 76df020c..891f6bf3 100644
--- a/pickles/jffs2.pk
+++ b/pickles/jffs2.pk
@@ -24,8 +24,8 @@
  * Note: This was tested with file systems created by mkfs.jffs2 and sumtool
  */
 
-var JFFS2_MAGIC = 0x1985;
-var JFFS2_MAGIC_OLD = 0x1984;
+var JFFS2_MAGIC = 0x1985UH;
+var JFFS2_MAGIC_OLD = 0x1984UH;
 
 var JFFS2_NODE_ACCURATE = 0x2000;
 
@@ -61,14 +61,14 @@ var jffs2_nodetypes = [
 ];
 
 // inode compression types
-var JFFS2_COMPR_NONE = 0x00;
-var JFFS2_COMPR_ZERO = 0x01;
-var JFFS2_COMPR_RTIME = 0x02;
-var JFFS2_COMPR_RUBINMIPS = 0x03;
-var JFFS2_COMPR_COPY = 0x04;
-var JFFS2_COMPR_DYNRUBIN = 0x05;
-var JFFS2_COMPR_ZLIB = 0x06;
-var JFFS2_COMPR_LZO = 0x07;
+var JFFS2_COMPR_NONE      = 0x00UB;
+var JFFS2_COMPR_ZERO      = 0x01UB;
+var JFFS2_COMPR_RTIME     = 0x02UB;
+var JFFS2_COMPR_RUBINMIPS = 0x03UB;
+var JFFS2_COMPR_COPY      = 0x04UB;
+var JFFS2_COMPR_DYNRUBIN  = 0x05UB;
+var JFFS2_COMPR_ZLIB      = 0x06UB;
+var JFFS2_COMPR_LZO       = 0x07UB;
 
 var jffs2_inode_comp_types = [
     JFFS2_COMPR_NONE,
@@ -84,15 +84,15 @@ var jffs2_inode_comp_types = [
 // dirent types
 // These are the same as the linux dirent values and could
 // probably be moved to a dirent pickle someday
-var JFFS2_DT_UNKNOWN = 0x0;
-var JFFS2_DT_FIFO = 0x1;
-var JFFS2_DT_CHR = 0x2;
-var JFFS2_DT_DIR = 0x4;
-var JFFS2_DT_BLK = 0x6;
-var JFFS2_DT_REG = 0x8;
-var JFFS2_DT_LNK = 0xa;
-var JFFS2_DT_SOCK = 0xc;
-var JFFS2_DT_WHT = 0xe;
+var JFFS2_DT_UNKNOWN = 0x0UB;
+var JFFS2_DT_FIFO    = 0x1UB;
+var JFFS2_DT_CHR     = 0x2UB;
+var JFFS2_DT_DIR     = 0x4UB;
+var JFFS2_DT_BLK     = 0x6UB;
+var JFFS2_DT_REG     = 0x8UB;
+var JFFS2_DT_LNK     = 0xaUB;
+var JFFS2_DT_SOCK    = 0xcUB;
+var JFFS2_DT_WHT     = 0xeUB;
 
 var jffs2_dirent_types = [
     JFFS2_DT_UNKNOWN,
diff --git a/pickles/pe.pk b/pickles/pe.pk
index ad9fef55..e4e41253 100644
--- a/pickles/pe.pk
+++ b/pickles/pe.pk
@@ -176,17 +176,17 @@ var PE_IMAGE_FILE_MACHINE_UNKNOWN    = 0x0000UH,
 
 /* Subsystem types.  */
 
-var PE_SUBSYS_UNKNOWN = 0,
-    PE_SUBSYS_NATIVE = 1,
-    PE_SUBSYS_WINDOWS_GUI = 2,
-    PE_SUBSYS_WINDOWS_CUI = 3,
-    PE_SUBSYS_POSIX_CUI = 7,
-    PE_SUBSYS_WINDOWS_CE_GUI = 9,
-    PE_SUBSYS_EFI_APPLICATION = 10,
-    PE_SUBSYS_EFI_BOOT_SERVICE_DRIVER = 11,
-    PE_SUBSYS_EFI_RUNTIME_DRIVER = 12,
-    PE_SUBSYS_SAL_RUNTIME_DRIVER = 13,
-    PE_SUBSYS_XBOX = 14;
+var PE_SUBSYS_UNKNOWN                 = 0UH,
+    PE_SUBSYS_NATIVE                  = 1UH,
+    PE_SUBSYS_WINDOWS_GUI             = 2UH,
+    PE_SUBSYS_WINDOWS_CUI             = 3UH,
+    PE_SUBSYS_POSIX_CUI               = 7UH,
+    PE_SUBSYS_WINDOWS_CE_GUI          = 9UH,
+    PE_SUBSYS_EFI_APPLICATION         = 10UH,
+    PE_SUBSYS_EFI_BOOT_SERVICE_DRIVER = 11UH,
+    PE_SUBSYS_EFI_RUNTIME_DRIVER      = 12UH,
+    PE_SUBSYS_SAL_RUNTIME_DRIVER      = 13UH,
+    PE_SUBSYS_XBOX                    = 14UH;
 
 var pe_subsystems =
   [ PE_SUBSYS_UNKNOWN, PE_SUBSYS_NATIVE, PE_SUBSYS_WINDOWS_GUI,
@@ -547,20 +547,20 @@ type PE_Delay_Import =
    Each entry in the debug directory describes a form of debug
    information present in the PE file.  */
 
-var PE_DEBUG_TYPE_UNKNOWN = 0,
-    PE_DEBUG_TYPE_COFF = 1,
-    PE_DEBUG_TYPE_CODEVIEW = 2,
-    PE_DEBUG_TYPE_FPO = 3,
-    PE_DEBUG_TYPE_MISC = 4,
-    PE_DEBUG_TYPE_EXCEPTION = 5,
-    PE_DEBUG_TYPE_FIXUP = 6,
-    PE_DEBUG_TYPE_OMAP_TO_SRC = 7,
-    PE_DEBUG_TYPE_OMAP_FROM_SRC = 8,
-    PE_DEBUG_TYPE_BORLAND = 9,
-    PE_DEBUG_TYPE_RESERVED10 = 10,
-    PE_DEBUG_TYPE_CLSID = 11,
-    PE_DEBUG_TYPE_REPRO = 16,
-    PE_DEBUG_TYPE_EX_DLLCHARACTERISTICS = 20;
+var PE_DEBUG_TYPE_UNKNOWN               = 0U,
+    PE_DEBUG_TYPE_COFF                  = 1U,
+    PE_DEBUG_TYPE_CODEVIEW              = 2U,
+    PE_DEBUG_TYPE_FPO                   = 3U,
+    PE_DEBUG_TYPE_MISC                  = 4U,
+    PE_DEBUG_TYPE_EXCEPTION             = 5U,
+    PE_DEBUG_TYPE_FIXUP                 = 6U,
+    PE_DEBUG_TYPE_OMAP_TO_SRC           = 7U,
+    PE_DEBUG_TYPE_OMAP_FROM_SRC         = 8U,
+    PE_DEBUG_TYPE_BORLAND               = 9U,
+    PE_DEBUG_TYPE_RESERVED10            = 10U,
+    PE_DEBUG_TYPE_CLSID                 = 11U,
+    PE_DEBUG_TYPE_REPRO                 = 16U,
+    PE_DEBUG_TYPE_EX_DLLCHARACTERISTICS = 20U;
 
 type PE_Debug_Directory_Entry =
   struct
@@ -842,13 +842,19 @@ type PE_TLS_Directory =
     {
       uint<9>;
       uint<4> alignment_info
-        : alignment_info in [ PE_SEC_F_ALIGN_1BYTES, PE_SEC_F_ALIGN_2BYTES,
-                              PE_SEC_F_ALIGN_4BYTES, PE_SEC_F_ALIGN_8BYTES,
-                              PE_SEC_F_ALIGN_16BYTES, PE_SEC_F_ALIGN_32BYTES,
-                              PE_SEC_F_ALIGN_64BYTES, PE_SEC_F_ALIGN_128BYTES,
-                              PE_SEC_F_ALIGN_512BYTES, 
PE_SEC_F_ALIGN_1024BYTES,
-                              PE_SEC_F_ALIGN_2048BYTES, 
PE_SEC_F_ALIGN_4096BYTES,
-                              PE_SEC_F_ALIGN_8192BYTES ];
+        : alignment_info as uint<32> in [ PE_SEC_F_ALIGN_1BYTES,
+                                          PE_SEC_F_ALIGN_2BYTES,
+                                          PE_SEC_F_ALIGN_4BYTES,
+                                          PE_SEC_F_ALIGN_8BYTES,
+                                          PE_SEC_F_ALIGN_16BYTES,
+                                          PE_SEC_F_ALIGN_32BYTES,
+                                          PE_SEC_F_ALIGN_64BYTES,
+                                          PE_SEC_F_ALIGN_128BYTES,
+                                          PE_SEC_F_ALIGN_512BYTES,
+                                          PE_SEC_F_ALIGN_1024BYTES,
+                                          PE_SEC_F_ALIGN_2048BYTES,
+                                          PE_SEC_F_ALIGN_4096BYTES,
+                                          PE_SEC_F_ALIGN_8192BYTES ];
       uint<19>;
     } flags;
   };
@@ -865,13 +871,19 @@ type PE_TLS_Directory_64 =
     {
       uint<9>;
       uint<4> alignment_info
-        : alignment_info in [ PE_SEC_F_ALIGN_1BYTES, PE_SEC_F_ALIGN_2BYTES,
-                              PE_SEC_F_ALIGN_4BYTES, PE_SEC_F_ALIGN_8BYTES,
-                              PE_SEC_F_ALIGN_16BYTES, PE_SEC_F_ALIGN_32BYTES,
-                              PE_SEC_F_ALIGN_64BYTES, PE_SEC_F_ALIGN_128BYTES,
-                              PE_SEC_F_ALIGN_512BYTES, 
PE_SEC_F_ALIGN_1024BYTES,
-                              PE_SEC_F_ALIGN_2048BYTES, 
PE_SEC_F_ALIGN_4096BYTES,
-                              PE_SEC_F_ALIGN_8192BYTES ];
+        : alignment_info as uint<32> in [ PE_SEC_F_ALIGN_1BYTES,
+                                          PE_SEC_F_ALIGN_2BYTES,
+                                          PE_SEC_F_ALIGN_4BYTES,
+                                          PE_SEC_F_ALIGN_8BYTES,
+                                          PE_SEC_F_ALIGN_16BYTES,
+                                          PE_SEC_F_ALIGN_32BYTES,
+                                          PE_SEC_F_ALIGN_64BYTES,
+                                          PE_SEC_F_ALIGN_128BYTES,
+                                          PE_SEC_F_ALIGN_512BYTES,
+                                          PE_SEC_F_ALIGN_1024BYTES,
+                                          PE_SEC_F_ALIGN_2048BYTES,
+                                          PE_SEC_F_ALIGN_4096BYTES,
+                                          PE_SEC_F_ALIGN_8192BYTES ];
       uint<19>;
     } flags;
   };
-- 
2.38.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]