Contents of the .debug_info section:

  Compilation Unit @ offset 0x0:
   Length:        0x215 (32-bit)
   Version:       2
   Abbrev Offset: 0x0
   Pointer Size:  4
 <0><b>: Abbrev Number: 1 (DW_TAG_compile_unit)
    <c>   DW_AT_producer    : (indirect string, offset: 0x0): Android (4691093 based on r316199) clang version 6.0.2 (https://android.googlesource.com/toolchain/clang 183abd29fc496f55536e7d904e0abae47888fc7f) (https://android.googlesource.com/toolchain/llvm 34361f192e41ed6e4e8f9aca80a4ea7e9856f327) (based on LLVM 6.0.2svn)
    <10>   DW_AT_language    : 12	(ANSI C99)
    <12>   DW_AT_name        : (indirect string, offset: 0x107): mpers-m32/msqid_ds_t.c
    <16>   DW_AT_stmt_list   : 0x0
    <1a>   DW_AT_comp_dir    : (indirect string, offset: 0x11e): /usr/local/google/ndkports/.out/strace/package/strace-4.23
    <1e>   DW_AT_GNU_pubnames: 1
 <1><1f>: Abbrev Number: 2 (DW_TAG_variable)
    <20>   DW_AT_name        : (indirect string, offset: 0x159): mpers_target_var
    <24>   DW_AT_type        : <0x31>
    <28>   DW_AT_external    : 1
    <29>   DW_AT_decl_file   : 5
    <2a>   DW_AT_decl_line   : 49
    <2b>   DW_AT_location    : 5 byte block: 3 4 0 0 0 	(DW_OP_addr: 4)
 <1><31>: Abbrev Number: 3 (DW_TAG_typedef)
    <32>   DW_AT_type        : <0x3c>
    <36>   DW_AT_name        : (indirect string, offset: 0x302): msqid_ds_t
    <3a>   DW_AT_decl_file   : 5
    <3b>   DW_AT_decl_line   : 42
 <1><3c>: Abbrev Number: 4 (DW_TAG_structure_type)
    <3d>   DW_AT_name        : (indirect string, offset: 0x2f7): msqid64_ds
    <41>   DW_AT_byte_size   : 76
    <42>   DW_AT_decl_file   : 4
    <43>   DW_AT_decl_line   : 22
 <2><44>: Abbrev Number: 5 (DW_TAG_member)
    <45>   DW_AT_name        : (indirect string, offset: 0x16a): msg_perm
    <49>   DW_AT_type        : <0xdf>
    <4d>   DW_AT_decl_file   : 4
    <4e>   DW_AT_decl_line   : 23
    <4f>   DW_AT_data_member_location: 2 byte block: 23 0 	(DW_OP_plus_uconst: 0)
 <2><52>: Abbrev Number: 5 (DW_TAG_member)
    <53>   DW_AT_name        : (indirect string, offset: 0x25a): msg_stime
    <57>   DW_AT_type        : <0x1f0>
    <5b>   DW_AT_decl_file   : 4
    <5c>   DW_AT_decl_line   : 24
    <5d>   DW_AT_data_member_location: 2 byte block: 23 24 	(DW_OP_plus_uconst: 36)
 <2><60>: Abbrev Number: 5 (DW_TAG_member)
    <61>   DW_AT_name        : (indirect string, offset: 0x28d): msg_rtime
    <65>   DW_AT_type        : <0x1f0>
    <69>   DW_AT_decl_file   : 4
    <6a>   DW_AT_decl_line   : 28
    <6b>   DW_AT_data_member_location: 2 byte block: 23 28 	(DW_OP_plus_uconst: 40)
 <2><6e>: Abbrev Number: 5 (DW_TAG_member)
    <6f>   DW_AT_name        : (indirect string, offset: 0x297): msg_ctime
    <73>   DW_AT_type        : <0x1f0>
    <77>   DW_AT_decl_file   : 4
    <78>   DW_AT_decl_line   : 32
    <79>   DW_AT_data_member_location: 2 byte block: 23 2c 	(DW_OP_plus_uconst: 44)
 <2><7c>: Abbrev Number: 5 (DW_TAG_member)
    <7d>   DW_AT_name        : (indirect string, offset: 0x2a1): msg_cbytes
    <81>   DW_AT_type        : <0x1de>
    <85>   DW_AT_decl_file   : 4
    <86>   DW_AT_decl_line   : 36
    <87>   DW_AT_data_member_location: 2 byte block: 23 30 	(DW_OP_plus_uconst: 48)
 <2><8a>: Abbrev Number: 5 (DW_TAG_member)
    <8b>   DW_AT_name        : (indirect string, offset: 0x2ac): msg_qnum
    <8f>   DW_AT_type        : <0x1de>
    <93>   DW_AT_decl_file   : 4
    <94>   DW_AT_decl_line   : 37
    <95>   DW_AT_data_member_location: 2 byte block: 23 34 	(DW_OP_plus_uconst: 52)
 <2><98>: Abbrev Number: 5 (DW_TAG_member)
    <99>   DW_AT_name        : (indirect string, offset: 0x2b5): msg_qbytes
    <9d>   DW_AT_type        : <0x1de>
    <a1>   DW_AT_decl_file   : 4
    <a2>   DW_AT_decl_line   : 38
    <a3>   DW_AT_data_member_location: 2 byte block: 23 38 	(DW_OP_plus_uconst: 56)
 <2><a6>: Abbrev Number: 5 (DW_TAG_member)
    <a7>   DW_AT_name        : (indirect string, offset: 0x2c0): msg_lspid
    <ab>   DW_AT_type        : <0x20d>
    <af>   DW_AT_decl_file   : 4
    <b0>   DW_AT_decl_line   : 39
    <b1>   DW_AT_data_member_location: 2 byte block: 23 3c 	(DW_OP_plus_uconst: 60)
 <2><b4>: Abbrev Number: 5 (DW_TAG_member)
    <b5>   DW_AT_name        : (indirect string, offset: 0x2d9): msg_lrpid
    <b9>   DW_AT_type        : <0x20d>
    <bd>   DW_AT_decl_file   : 4
    <be>   DW_AT_decl_line   : 40
    <bf>   DW_AT_data_member_location: 2 byte block: 23 40 	(DW_OP_plus_uconst: 64)
 <2><c2>: Abbrev Number: 5 (DW_TAG_member)
    <c3>   DW_AT_name        : (indirect string, offset: 0x2e3): __unused4
    <c7>   DW_AT_type        : <0x1de>
    <cb>   DW_AT_decl_file   : 4
    <cc>   DW_AT_decl_line   : 41
    <cd>   DW_AT_data_member_location: 2 byte block: 23 44 	(DW_OP_plus_uconst: 68)
 <2><d0>: Abbrev Number: 5 (DW_TAG_member)
    <d1>   DW_AT_name        : (indirect string, offset: 0x2ed): __unused5
    <d5>   DW_AT_type        : <0x1de>
    <d9>   DW_AT_decl_file   : 4
    <da>   DW_AT_decl_line   : 42
    <db>   DW_AT_data_member_location: 2 byte block: 23 48 	(DW_OP_plus_uconst: 72)
 <2><de>: Abbrev Number: 0
 <1><df>: Abbrev Number: 4 (DW_TAG_structure_type)
    <e0>   DW_AT_name        : (indirect string, offset: 0x24f): ipc64_perm
    <e4>   DW_AT_byte_size   : 36
    <e5>   DW_AT_decl_file   : 2
    <e6>   DW_AT_decl_line   : 21
 <2><e7>: Abbrev Number: 5 (DW_TAG_member)
    <e8>   DW_AT_name        : (indirect string, offset: 0x173): key
    <ec>   DW_AT_type        : <0x182>
    <f0>   DW_AT_decl_file   : 2
    <f1>   DW_AT_decl_line   : 22
    <f2>   DW_AT_data_member_location: 2 byte block: 23 0 	(DW_OP_plus_uconst: 0)
 <2><f5>: Abbrev Number: 5 (DW_TAG_member)
    <f6>   DW_AT_name        : (indirect string, offset: 0x18a): uid
    <fa>   DW_AT_type        : <0x194>
    <fe>   DW_AT_decl_file   : 2
    <ff>   DW_AT_decl_line   : 23
    <100>   DW_AT_data_member_location: 2 byte block: 23 4 	(DW_OP_plus_uconst: 4)
 <2><103>: Abbrev Number: 5 (DW_TAG_member)
    <104>   DW_AT_name        : (indirect string, offset: 0x1ac): gid
    <108>   DW_AT_type        : <0x1a6>
    <10c>   DW_AT_decl_file   : 2
    <10d>   DW_AT_decl_line   : 24
    <10e>   DW_AT_data_member_location: 2 byte block: 23 8 	(DW_OP_plus_uconst: 8)
 <2><111>: Abbrev Number: 5 (DW_TAG_member)
    <112>   DW_AT_name        : (indirect string, offset: 0x1c1): cuid
    <116>   DW_AT_type        : <0x194>
    <11a>   DW_AT_decl_file   : 2
    <11b>   DW_AT_decl_line   : 25
    <11c>   DW_AT_data_member_location: 2 byte block: 23 c 	(DW_OP_plus_uconst: 12)
 <2><11f>: Abbrev Number: 5 (DW_TAG_member)
    <120>   DW_AT_name        : (indirect string, offset: 0x1c6): cgid
    <124>   DW_AT_type        : <0x1a6>
    <128>   DW_AT_decl_file   : 2
    <129>   DW_AT_decl_line   : 26
    <12a>   DW_AT_data_member_location: 2 byte block: 23 10 	(DW_OP_plus_uconst: 16)
 <2><12d>: Abbrev Number: 5 (DW_TAG_member)
    <12e>   DW_AT_name        : (indirect string, offset: 0x1cb): mode
    <132>   DW_AT_type        : <0x1b1>
    <136>   DW_AT_decl_file   : 2
    <137>   DW_AT_decl_line   : 27
    <138>   DW_AT_data_member_location: 2 byte block: 23 14 	(DW_OP_plus_uconst: 20)
 <2><13b>: Abbrev Number: 5 (DW_TAG_member)
    <13c>   DW_AT_name        : (indirect string, offset: 0x1e0): __pad1
    <140>   DW_AT_type        : <0x1bc>
    <144>   DW_AT_decl_file   : 2
    <145>   DW_AT_decl_line   : 28
    <146>   DW_AT_data_member_location: 2 byte block: 23 18 	(DW_OP_plus_uconst: 24)
 <2><149>: Abbrev Number: 5 (DW_TAG_member)
    <14a>   DW_AT_name        : (indirect string, offset: 0x1fe): seq
    <14e>   DW_AT_type        : <0x1d7>
    <152>   DW_AT_decl_file   : 2
    <153>   DW_AT_decl_line   : 29
    <154>   DW_AT_data_member_location: 2 byte block: 23 18 	(DW_OP_plus_uconst: 24)
 <2><157>: Abbrev Number: 5 (DW_TAG_member)
    <158>   DW_AT_name        : (indirect string, offset: 0x211): __pad2
    <15c>   DW_AT_type        : <0x1d7>
    <160>   DW_AT_decl_file   : 2
    <161>   DW_AT_decl_line   : 30
    <162>   DW_AT_data_member_location: 2 byte block: 23 1a 	(DW_OP_plus_uconst: 26)
 <2><165>: Abbrev Number: 5 (DW_TAG_member)
    <166>   DW_AT_name        : (indirect string, offset: 0x218): __unused1
    <16a>   DW_AT_type        : <0x1de>
    <16e>   DW_AT_decl_file   : 2
    <16f>   DW_AT_decl_line   : 31
    <170>   DW_AT_data_member_location: 2 byte block: 23 1c 	(DW_OP_plus_uconst: 28)
 <2><173>: Abbrev Number: 5 (DW_TAG_member)
    <174>   DW_AT_name        : (indirect string, offset: 0x245): __unused2
    <178>   DW_AT_type        : <0x1de>
    <17c>   DW_AT_decl_file   : 2
    <17d>   DW_AT_decl_line   : 32
    <17e>   DW_AT_data_member_location: 2 byte block: 23 20 	(DW_OP_plus_uconst: 32)
 <2><181>: Abbrev Number: 0
 <1><182>: Abbrev Number: 3 (DW_TAG_typedef)
    <183>   DW_AT_type        : <0x18d>
    <187>   DW_AT_name        : (indirect string, offset: 0x17b): __kernel_key_t
    <18b>   DW_AT_decl_file   : 1
    <18c>   DW_AT_decl_line   : 28
 <1><18d>: Abbrev Number: 6 (DW_TAG_base_type)
    <18e>   DW_AT_name        : (indirect string, offset: 0x177): int
    <192>   DW_AT_encoding    : 5	(signed)
    <193>   DW_AT_byte_size   : 4
 <1><194>: Abbrev Number: 3 (DW_TAG_typedef)
    <195>   DW_AT_type        : <0x19f>
    <199>   DW_AT_name        : (indirect string, offset: 0x19b): __kernel_uid32_t
    <19d>   DW_AT_decl_file   : 3
    <19e>   DW_AT_decl_line   : 49
 <1><19f>: Abbrev Number: 6 (DW_TAG_base_type)
    <1a0>   DW_AT_name        : (indirect string, offset: 0x18e): unsigned int
    <1a4>   DW_AT_encoding    : 7	(unsigned)
    <1a5>   DW_AT_byte_size   : 4
 <1><1a6>: Abbrev Number: 3 (DW_TAG_typedef)
    <1a7>   DW_AT_type        : <0x19f>
    <1ab>   DW_AT_name        : (indirect string, offset: 0x1b0): __kernel_gid32_t
    <1af>   DW_AT_decl_file   : 3
    <1b0>   DW_AT_decl_line   : 50
 <1><1b1>: Abbrev Number: 3 (DW_TAG_typedef)
    <1b2>   DW_AT_type        : <0x19f>
    <1b6>   DW_AT_name        : (indirect string, offset: 0x1d0): __kernel_mode_t
    <1ba>   DW_AT_decl_file   : 3
    <1bb>   DW_AT_decl_line   : 30
 <1><1bc>: Abbrev Number: 7 (DW_TAG_array_type)
    <1bd>   DW_AT_type        : <0x1c9>
 <2><1c1>: Abbrev Number: 8 (DW_TAG_subrange_type)
    <1c2>   DW_AT_type        : <0x1d0>
    <1c6>   DW_AT_lower_bound : 0
    <1c7>   DW_AT_count       : 0
 <2><1c8>: Abbrev Number: 0
 <1><1c9>: Abbrev Number: 6 (DW_TAG_base_type)
    <1ca>   DW_AT_name        : (indirect string, offset: 0x1e7): unsigned char
    <1ce>   DW_AT_encoding    : 8	(unsigned char)
    <1cf>   DW_AT_byte_size   : 1
 <1><1d0>: Abbrev Number: 9 (DW_TAG_base_type)
    <1d1>   DW_AT_name        : (indirect string, offset: 0x1f5): sizetype
    <1d5>   DW_AT_byte_size   : 8
    <1d6>   DW_AT_encoding    : 7	(unsigned)
 <1><1d7>: Abbrev Number: 6 (DW_TAG_base_type)
    <1d8>   DW_AT_name        : (indirect string, offset: 0x202): unsigned short
    <1dc>   DW_AT_encoding    : 7	(unsigned)
    <1dd>   DW_AT_byte_size   : 2
 <1><1de>: Abbrev Number: 3 (DW_TAG_typedef)
    <1df>   DW_AT_type        : <0x1e9>
    <1e3>   DW_AT_name        : (indirect string, offset: 0x234): __kernel_ulong_t
    <1e7>   DW_AT_decl_file   : 3
    <1e8>   DW_AT_decl_line   : 24
 <1><1e9>: Abbrev Number: 6 (DW_TAG_base_type)
    <1ea>   DW_AT_name        : (indirect string, offset: 0x222): long unsigned int
    <1ee>   DW_AT_encoding    : 7	(unsigned)
    <1ef>   DW_AT_byte_size   : 4
 <1><1f0>: Abbrev Number: 3 (DW_TAG_typedef)
    <1f1>   DW_AT_type        : <0x1fb>
    <1f5>   DW_AT_name        : (indirect string, offset: 0x27d): __kernel_time_t
    <1f9>   DW_AT_decl_file   : 3
    <1fa>   DW_AT_decl_line   : 77
 <1><1fb>: Abbrev Number: 3 (DW_TAG_typedef)
    <1fc>   DW_AT_type        : <0x206>
    <200>   DW_AT_name        : (indirect string, offset: 0x26d): __kernel_long_t
    <204>   DW_AT_decl_file   : 3
    <205>   DW_AT_decl_line   : 23
 <1><206>: Abbrev Number: 6 (DW_TAG_base_type)
    <207>   DW_AT_name        : (indirect string, offset: 0x264): long int
    <20b>   DW_AT_encoding    : 5	(signed)
    <20c>   DW_AT_byte_size   : 4
 <1><20d>: Abbrev Number: 3 (DW_TAG_typedef)
    <20e>   DW_AT_type        : <0x18d>
    <212>   DW_AT_name        : (indirect string, offset: 0x2ca): __kernel_pid_t
    <216>   DW_AT_decl_file   : 3
    <217>   DW_AT_decl_line   : 33
 <1><218>: Abbrev Number: 0

