{ "array_types" : [ { "alignment" : 4, "linker_set_key" : "_ZTIA2_i", "name" : "int[2]", "referenced_type" : "_ZTIi", "size" : 8, "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h" } ], "builtin_types" : [ { "alignment" : 4, "is_integral" : true, "linker_set_key" : "_ZTIi", "name" : "int", "size" : 4 }, { "alignment" : 2, "is_integral" : true, "linker_set_key" : "_ZTIs", "name" : "short", "size" : 2 }, { "linker_set_key" : "_ZTIv", "name" : "void" } ], "elf_functions" : [ { "name" : "_Z15PassByReferenceR7Struct1R7Struct2" } ], "elf_objects" : [], "enum_types" : [], "function_types" : [], "functions" : [ { "function_name" : "PassByReference", "linker_set_key" : "_Z15PassByReferenceR7Struct1R7Struct2", "parameters" : [ { "referenced_type" : "_ZTIR7Struct1" }, { "referenced_type" : "_ZTIR7Struct2" } ], "return_type" : "_ZTIR7Vtable3", "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h" } ], "global_vars" : [], "lvalue_reference_types" : [ { "alignment" : 8, "linker_set_key" : "_ZTIR7Struct1", "name" : "Struct1 &", "referenced_type" : "_ZTI7Struct1", "size" : 8, "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h" }, { "alignment" : 8, "linker_set_key" : "_ZTIR7Struct2", "name" : "Struct2 &", "referenced_type" : "_ZTI7Struct2", "size" : 8, "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h" }, { "alignment" : 8, "linker_set_key" : "_ZTIR7Vtable3", "name" : "Vtable3 &", "referenced_type" : "_ZTI7Vtable3", "size" : 8, "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h" } ], "pointer_types" : [ { "alignment" : 8, "linker_set_key" : "_ZTIP7Vtable1", "name" : "Vtable1 *", "referenced_type" : "_ZTI7Vtable1", "size" : 8, "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h" }, { "alignment" : 8, "linker_set_key" : "_ZTIP7Vtable2", "name" : "Vtable2 *", "referenced_type" : "_ZTI7Vtable2", "size" : 8, "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h" }, { "alignment" : 8, "linker_set_key" : "_ZTIP7Vtable3", "name" : "Vtable3 *", "referenced_type" : "_ZTI7Vtable3", "size" : 8, "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h" } ], "qualified_types" : [], "record_types" : [ { "alignment" : 4, "fields" : [ { "field_name" : "offset_0", "referenced_type" : "_ZTIs" }, { "field_name" : "offset_16", "field_offset" : 16, "referenced_type" : "_ZTIs" }, { "field_name" : "offset_32", "field_offset" : 32, "referenced_type" : "_ZTIi" }, { "field_name" : "offset_64", "field_offset" : 64, "referenced_type" : "_ZTIi" } ], "linker_set_key" : "_ZTI7Struct1", "name" : "Struct1", "size" : 12, "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h" }, { "alignment" : 4, "fields" : [ { "field_name" : "member", "referenced_type" : "_ZTIN7Struct26NestedE" } ], "linker_set_key" : "_ZTI7Struct2", "name" : "Struct2", "size" : 8, "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h" }, { "alignment" : 8, "fields" : [ { "field_name" : "member_1", "field_offset" : 64, "referenced_type" : "_ZTIi" }, { "field_name" : "added_member_1", "field_offset" : 96, "referenced_type" : "_ZTIi" } ], "linker_set_key" : "_ZTI7Vtable1", "name" : "Vtable1", "size" : 16, "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h", "vtable_components" : [ { "kind" : "offset_to_top" }, { "kind" : "rtti", "mangled_component_name" : "_ZTI7Vtable1" }, { "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN7Vtable1D1Ev" }, { "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN7Vtable1D0Ev" }, { "is_pure" : true, "mangled_component_name" : "_ZN7Vtable110function_1Ev" }, { "is_pure" : true, "mangled_component_name" : "_ZN7Vtable116added_function_1Ev" } ] }, { "alignment" : 8, "fields" : [ { "field_name" : "member_2", "field_offset" : 64, "referenced_type" : "_ZTIi" }, { "field_name" : "added_member_2", "field_offset" : 96, "referenced_type" : "_ZTIi" } ], "linker_set_key" : "_ZTI7Vtable2", "name" : "Vtable2", "size" : 16, "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h", "vtable_components" : [ { "kind" : "offset_to_top" }, { "kind" : "rtti", "mangled_component_name" : "_ZTI7Vtable2" }, { "mangled_component_name" : "_ZN7Vtable210function_2Ev" }, { "is_pure" : true, "mangled_component_name" : "_ZN7Vtable216added_function_2Ev" }, { "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN7Vtable2D1Ev" }, { "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN7Vtable2D0Ev" } ] }, { "alignment" : 8, "base_specifiers" : [ { "is_virtual" : true, "referenced_type" : "_ZTI7Vtable1" }, { "is_virtual" : true, "referenced_type" : "_ZTI7Vtable2" } ], "fields" : [ { "field_name" : "member_3", "field_offset" : 64, "referenced_type" : "_ZTIi" }, { "field_name" : "added_member_3", "field_offset" : 96, "referenced_type" : "_ZTIi" } ], "linker_set_key" : "_ZTI7Vtable3", "name" : "Vtable3", "size" : 48, "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h", "vtable_components" : [ { "component_value" : 32, "kind" : "vbase_offset" }, { "component_value" : 16, "kind" : "vbase_offset" }, { "kind" : "offset_to_top" }, { "kind" : "rtti", "mangled_component_name" : "_ZTI7Vtable3" }, { "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZN7Vtable3D1Ev" }, { "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZN7Vtable3D0Ev" }, { "mangled_component_name" : "_ZN7Vtable310function_3Ev" }, { "mangled_component_name" : "_ZN7Vtable316added_function_3Ev" }, { "kind" : "vcall_offset" }, { "kind" : "vcall_offset" }, { "component_value" : -16, "kind" : "vcall_offset" }, { "component_value" : -16, "kind" : "offset_to_top" }, { "kind" : "rtti", "mangled_component_name" : "_ZTI7Vtable3" }, { "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZTv0_n24_N7Vtable3D1Ev" }, { "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZTv0_n24_N7Vtable3D0Ev" }, { "is_pure" : true, "mangled_component_name" : "_ZN7Vtable110function_1Ev" }, { "is_pure" : true, "mangled_component_name" : "_ZN7Vtable116added_function_1Ev" }, { "component_value" : -32, "kind" : "vcall_offset" }, { "kind" : "vcall_offset" }, { "kind" : "vcall_offset" }, { "component_value" : -32, "kind" : "offset_to_top" }, { "kind" : "rtti", "mangled_component_name" : "_ZTI7Vtable3" }, { "mangled_component_name" : "_ZN7Vtable210function_2Ev" }, { "is_pure" : true, "mangled_component_name" : "_ZN7Vtable216added_function_2Ev" }, { "kind" : "complete_dtor_pointer", "mangled_component_name" : "_ZTv0_n40_N7Vtable3D1Ev" }, { "kind" : "deleting_dtor_pointer", "mangled_component_name" : "_ZTv0_n40_N7Vtable3D0Ev" } ] }, { "alignment" : 4, "fields" : [ { "field_name" : "nested_member", "referenced_type" : "_ZTIi" }, { "field_name" : "added_member", "referenced_type" : "_ZTIA2_i" } ], "linker_set_key" : "_ZTIN7Struct26NestedE", "name" : "Struct2::Nested", "record_kind" : "union", "size" : 8, "source_file" : "development/vndk/tools/header-checker/tests/integration/struct_extensions/include/extensions.h" } ], "rvalue_reference_types" : [] }