Merge "Show thunk symbols in vtables"
This commit is contained in:
@@ -633,6 +633,8 @@ bool RecordDeclWrapper::SetupCXXBases(
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
typedef std::map<uint64_t, clang::ThunkInfo> ThunkMap;
|
||||||
|
|
||||||
bool RecordDeclWrapper::SetupRecordVTable(
|
bool RecordDeclWrapper::SetupRecordVTable(
|
||||||
abi_util::RecordTypeIR *record_declp,
|
abi_util::RecordTypeIR *record_declp,
|
||||||
const clang::CXXRecordDecl *cxx_record_decl) {
|
const clang::CXXRecordDecl *cxx_record_decl) {
|
||||||
@@ -654,18 +656,29 @@ bool RecordDeclWrapper::SetupRecordVTable(
|
|||||||
}
|
}
|
||||||
const clang::VTableLayout &vtable_layout =
|
const clang::VTableLayout &vtable_layout =
|
||||||
itanium_vtable_contextp->getVTableLayout(cxx_record_decl);
|
itanium_vtable_contextp->getVTableLayout(cxx_record_decl);
|
||||||
|
ThunkMap thunk_map(vtable_layout.vtable_thunk_begin(),
|
||||||
|
vtable_layout.vtable_thunk_end());
|
||||||
abi_util::VTableLayoutIR vtable_ir_layout;
|
abi_util::VTableLayoutIR vtable_ir_layout;
|
||||||
for (const auto &vtable_component : vtable_layout.vtable_components()) {
|
|
||||||
|
uint64_t index = 0;
|
||||||
|
for (auto vtable_component : vtable_layout.vtable_components()) {
|
||||||
|
clang::ThunkInfo thunk_info;
|
||||||
|
ThunkMap::iterator it = thunk_map.find(index);
|
||||||
|
if (it != thunk_map.end()) {
|
||||||
|
thunk_info = it->second;
|
||||||
|
}
|
||||||
abi_util::VTableComponentIR added_component =
|
abi_util::VTableComponentIR added_component =
|
||||||
SetupRecordVTableComponent(vtable_component);
|
SetupRecordVTableComponent(vtable_component, thunk_info);
|
||||||
vtable_ir_layout.AddVTableComponent(std::move(added_component));
|
vtable_ir_layout.AddVTableComponent(std::move(added_component));
|
||||||
|
index++;
|
||||||
}
|
}
|
||||||
record_declp->SetVTableLayout(std::move(vtable_ir_layout));
|
record_declp->SetVTableLayout(std::move(vtable_ir_layout));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
abi_util::VTableComponentIR RecordDeclWrapper::SetupRecordVTableComponent(
|
abi_util::VTableComponentIR RecordDeclWrapper::SetupRecordVTableComponent(
|
||||||
const clang::VTableComponent &vtable_component) {
|
const clang::VTableComponent &vtable_component,
|
||||||
|
const clang::ThunkInfo &thunk_info) {
|
||||||
abi_util::VTableComponentIR::Kind kind =
|
abi_util::VTableComponentIR::Kind kind =
|
||||||
abi_util::VTableComponentIR::Kind::RTTI;
|
abi_util::VTableComponentIR::Kind::RTTI;
|
||||||
std::string mangled_component_name = "";
|
std::string mangled_component_name = "";
|
||||||
@@ -673,6 +686,7 @@ abi_util::VTableComponentIR RecordDeclWrapper::SetupRecordVTableComponent(
|
|||||||
int64_t value = 0;
|
int64_t value = 0;
|
||||||
clang::VTableComponent::Kind clang_component_kind =
|
clang::VTableComponent::Kind clang_component_kind =
|
||||||
vtable_component.getKind();
|
vtable_component.getKind();
|
||||||
|
|
||||||
switch (clang_component_kind) {
|
switch (clang_component_kind) {
|
||||||
case clang::VTableComponent::CK_VCallOffset:
|
case clang::VTableComponent::CK_VCallOffset:
|
||||||
kind = abi_util::VTableComponentIR::Kind::VCallOffset;
|
kind = abi_util::VTableComponentIR::Kind::VCallOffset;
|
||||||
@@ -706,22 +720,36 @@ abi_util::VTableComponentIR RecordDeclWrapper::SetupRecordVTableComponent(
|
|||||||
switch (clang_component_kind) {
|
switch (clang_component_kind) {
|
||||||
case clang::VTableComponent::CK_FunctionPointer:
|
case clang::VTableComponent::CK_FunctionPointer:
|
||||||
kind = abi_util::VTableComponentIR::Kind::FunctionPointer;
|
kind = abi_util::VTableComponentIR::Kind::FunctionPointer;
|
||||||
mangled_component_name = GetMangledNameDecl(method_decl,
|
if (thunk_info.isEmpty()) {
|
||||||
mangle_contextp_);
|
mangle_contextp_->mangleName(method_decl, ostream);
|
||||||
|
} else {
|
||||||
|
mangle_contextp_->mangleThunk(method_decl, thunk_info, ostream);
|
||||||
|
}
|
||||||
|
ostream.flush();
|
||||||
break;
|
break;
|
||||||
case clang::VTableComponent::CK_CompleteDtorPointer:
|
case clang::VTableComponent::CK_CompleteDtorPointer:
|
||||||
kind = abi_util::VTableComponentIR::Kind::CompleteDtorPointer;
|
|
||||||
mangle_contextp_->mangleCXXDtor(
|
|
||||||
vtable_component.getDestructorDecl(),
|
|
||||||
clang::CXXDtorType::Dtor_Complete, ostream);
|
|
||||||
ostream.flush();
|
|
||||||
break;
|
|
||||||
case clang::VTableComponent::CK_DeletingDtorPointer:
|
case clang::VTableComponent::CK_DeletingDtorPointer:
|
||||||
|
{
|
||||||
|
clang::CXXDtorType dtor_type;
|
||||||
|
if (clang_component_kind ==
|
||||||
|
clang::VTableComponent::CK_CompleteDtorPointer) {
|
||||||
|
dtor_type = clang::CXXDtorType::Dtor_Complete;
|
||||||
|
kind = abi_util::VTableComponentIR::Kind::CompleteDtorPointer;
|
||||||
|
} else {
|
||||||
|
dtor_type = clang::CXXDtorType::Dtor_Deleting;
|
||||||
kind = abi_util::VTableComponentIR::Kind::DeletingDtorPointer;
|
kind = abi_util::VTableComponentIR::Kind::DeletingDtorPointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (thunk_info.isEmpty()) {
|
||||||
mangle_contextp_->mangleCXXDtor(
|
mangle_contextp_->mangleCXXDtor(
|
||||||
vtable_component.getDestructorDecl(),
|
vtable_component.getDestructorDecl(), dtor_type, ostream);
|
||||||
clang::CXXDtorType::Dtor_Deleting, ostream);
|
} else {
|
||||||
|
mangle_contextp_->mangleCXXDtorThunk(
|
||||||
|
vtable_component.getDestructorDecl(), dtor_type,
|
||||||
|
thunk_info.This, ostream);
|
||||||
|
}
|
||||||
ostream.flush();
|
ostream.flush();
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case clang::VTableComponent::CK_UnusedFunctionPointer:
|
case clang::VTableComponent::CK_UnusedFunctionPointer:
|
||||||
kind = abi_util::VTableComponentIR::Kind::UnusedFunctionPointer;
|
kind = abi_util::VTableComponentIR::Kind::UnusedFunctionPointer;
|
||||||
|
|||||||
@@ -129,8 +129,9 @@ class RecordDeclWrapper : public ABIWrapper {
|
|||||||
|
|
||||||
std::string GetMangledRTTI(const clang::CXXRecordDecl *cxx_record_decl);
|
std::string GetMangledRTTI(const clang::CXXRecordDecl *cxx_record_decl);
|
||||||
|
|
||||||
abi_util::VTableComponentIR SetupRecordVTableComponent(
|
abi_util::VTableComponentIR
|
||||||
const clang::VTableComponent &vtable_component);
|
SetupRecordVTableComponent(const clang::VTableComponent &vtable_component,
|
||||||
|
const clang::ThunkInfo &thunk_info);
|
||||||
|
|
||||||
bool SetupCXXRecordInfo(abi_util::RecordTypeIR *record_declp,
|
bool SetupCXXRecordInfo(abi_util::RecordTypeIR *record_declp,
|
||||||
const std::string &source_file);
|
const std::string &source_file);
|
||||||
|
|||||||
@@ -209,11 +209,33 @@ DiffStatus AbiDiffHelper::CompareEnumTypes(
|
|||||||
return DiffStatus::no_diff;
|
return DiffStatus::no_diff;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static std::string RemoveThunkInfoFromMangledName(const std::string &name) {
|
||||||
|
if (name.find("_ZTv") != 0 && name.find("_ZTh") != 0 &&
|
||||||
|
name.find("_ZTc") != 0) {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
size_t base_name_pos = name.find("N");
|
||||||
|
if (base_name_pos == std::string::npos) {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
return "_Z" + name.substr(base_name_pos);
|
||||||
|
}
|
||||||
|
|
||||||
bool AbiDiffHelper::CompareVTableComponents(
|
bool AbiDiffHelper::CompareVTableComponents(
|
||||||
const abi_util::VTableComponentIR &old_component,
|
const abi_util::VTableComponentIR &old_component,
|
||||||
const abi_util::VTableComponentIR &new_component) {
|
const abi_util::VTableComponentIR &new_component) {
|
||||||
return old_component.GetName() == new_component.GetName() &&
|
// Vtable components in prebuilts/abi-dumps/vndk/28 don't have thunk info.
|
||||||
old_component.GetValue() == new_component.GetValue() &&
|
if (old_component.GetName() != new_component.GetName()) {
|
||||||
|
if (RemoveThunkInfoFromMangledName(old_component.GetName()) ==
|
||||||
|
RemoveThunkInfoFromMangledName(new_component.GetName())) {
|
||||||
|
llvm::errs() << "WARNING: Ignore difference between "
|
||||||
|
<< old_component.GetName() << " and "
|
||||||
|
<< new_component.GetName() << "\n";
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return old_component.GetValue() == new_component.GetValue() &&
|
||||||
old_component.GetKind() == new_component.GetKind();
|
old_component.GetKind() == new_component.GetKind();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -26,7 +26,11 @@
|
|||||||
float *speaker_float_star;
|
float *speaker_float_star;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if GOLDEN_CHANGE_INHERITANCE_TYPE
|
||||||
|
class LowVolumeSpeaker : public virtual SuperSpeaker {
|
||||||
|
#else
|
||||||
class LowVolumeSpeaker : public SuperSpeaker {
|
class LowVolumeSpeaker : public SuperSpeaker {
|
||||||
|
#endif
|
||||||
public:
|
public:
|
||||||
virtual void Speak() override;
|
virtual void Speak() override;
|
||||||
virtual LISTEN_RETURN_TYPE Listen() override;
|
virtual LISTEN_RETURN_TYPE Listen() override;
|
||||||
|
|||||||
@@ -458,7 +458,18 @@ TEST_MODULES = [
|
|||||||
arch = '',
|
arch = '',
|
||||||
api = 'current',
|
api = 'current',
|
||||||
),
|
),
|
||||||
|
Module(
|
||||||
|
name = 'libgolden_cpp_inheritance_type_changed',
|
||||||
|
srcs = ['integration/cpp/gold/golden_1.cpp',
|
||||||
|
'integration/cpp/gold/high_volume_speaker.cpp',
|
||||||
|
'integration/cpp/gold/low_volume_speaker.cpp',
|
||||||
|
],
|
||||||
|
version_script = 'integration/cpp/gold/map.txt',
|
||||||
|
export_include_dirs = ['integration/cpp/gold/include'],
|
||||||
|
cflags = ['-DGOLDEN_CHANGE_INHERITANCE_TYPE'],
|
||||||
|
arch = '',
|
||||||
|
api = 'current',
|
||||||
|
),
|
||||||
]
|
]
|
||||||
|
|
||||||
TEST_MODULES = { m.name: m for m in TEST_MODULES }
|
TEST_MODULES = { m.name: m for m in TEST_MODULES }
|
||||||
|
|||||||
@@ -0,0 +1,487 @@
|
|||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker"
|
||||||
|
size: 8
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-1"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker"
|
||||||
|
self_type: "type-1"
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-2"
|
||||||
|
field_offset: 32
|
||||||
|
field_name: "mSpeakderId"
|
||||||
|
access: private_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI12SuperSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS12SuperSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "HighVolumeSpeaker"
|
||||||
|
size: 8
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-11"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
linker_set_key: "HighVolumeSpeaker"
|
||||||
|
self_type: "type-11"
|
||||||
|
}
|
||||||
|
base_specifiers {
|
||||||
|
referenced_type: "type-1"
|
||||||
|
is_virtual: false
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS17HighVolumeSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "LowVolumeSpeaker"
|
||||||
|
size: 20
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-5"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "LowVolumeSpeaker"
|
||||||
|
self_type: "type-5"
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-6"
|
||||||
|
field_offset: 32
|
||||||
|
field_name: "speaker_uint_t"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-7"
|
||||||
|
field_offset: 64
|
||||||
|
field_name: "speaker_float_star"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
base_specifiers {
|
||||||
|
referenced_type: "type-1"
|
||||||
|
is_virtual: true
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: VBaseOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZTv0_n12_N16LowVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZTv0_n16_N16LowVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZTv0_n20_N16LowVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZTv0_n20_N16LowVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS16LowVolumeSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
enum_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker::Volume"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-8"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker::Volume"
|
||||||
|
self_type: "type-8"
|
||||||
|
}
|
||||||
|
underlying_type: "type-6"
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 1
|
||||||
|
name: "SuperSpeaker::Volume::Loud"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 2
|
||||||
|
name: "SuperSpeaker::Volume::Louder"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 3
|
||||||
|
name: "SuperSpeaker::Volume::Loudest"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 4
|
||||||
|
name: "SuperSpeaker::Volume::Lower"
|
||||||
|
}
|
||||||
|
access: private_access
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker *"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-1"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker *"
|
||||||
|
self_type: "type-9"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "HighVolumeSpeaker *"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-11"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
linker_set_key: "HighVolumeSpeaker *"
|
||||||
|
self_type: "type-12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "float *"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-3"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "float *"
|
||||||
|
self_type: "type-7"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "LowVolumeSpeaker *"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-5"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "LowVolumeSpeaker *"
|
||||||
|
self_type: "type-4"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "float"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-3"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "float"
|
||||||
|
self_type: "type-3"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: false
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "int"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-2"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "int"
|
||||||
|
self_type: "type-2"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: true
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "unsigned int"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-6"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "unsigned int"
|
||||||
|
self_type: "type-6"
|
||||||
|
}
|
||||||
|
is_unsigned: true
|
||||||
|
is_integral: true
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "void"
|
||||||
|
size: 0
|
||||||
|
alignment: 0
|
||||||
|
referenced_type: "type-10"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "void"
|
||||||
|
self_type: "type-10"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: false
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "SuperSpeaker::SpeakLouder"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-9"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-9"
|
||||||
|
function_name: "SuperSpeaker::CreateSuperSpeaker"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-2"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-8"
|
||||||
|
function_name: "SuperSpeaker::SpeakLoud"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-9"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "LowVolumeSpeaker::Speak"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-4"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "LowVolumeSpeaker::Listen"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-4"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-12"
|
||||||
|
function_name: "HighVolumeSpeaker::BadPractice"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-3"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "HighVolumeSpeaker::Speak"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "HighVolumeSpeaker::Listen"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12NotReferenced"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
}
|
||||||
|
elf_objects {
|
||||||
|
name: "_ZTV16LowVolumeSpeaker"
|
||||||
|
}
|
||||||
|
elf_objects {
|
||||||
|
name: "_ZTV17HighVolumeSpeaker"
|
||||||
|
}
|
||||||
@@ -0,0 +1,487 @@
|
|||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker"
|
||||||
|
size: 16
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-1"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker"
|
||||||
|
self_type: "type-1"
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-2"
|
||||||
|
field_offset: 64
|
||||||
|
field_name: "mSpeakderId"
|
||||||
|
access: private_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI12SuperSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS12SuperSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "HighVolumeSpeaker"
|
||||||
|
size: 16
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-11"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
linker_set_key: "HighVolumeSpeaker"
|
||||||
|
self_type: "type-11"
|
||||||
|
}
|
||||||
|
base_specifiers {
|
||||||
|
referenced_type: "type-1"
|
||||||
|
is_virtual: false
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS17HighVolumeSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "LowVolumeSpeaker"
|
||||||
|
size: 40
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-5"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "LowVolumeSpeaker"
|
||||||
|
self_type: "type-5"
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-6"
|
||||||
|
field_offset: 64
|
||||||
|
field_name: "speaker_uint_t"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-7"
|
||||||
|
field_offset: 128
|
||||||
|
field_name: "speaker_float_star"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
base_specifiers {
|
||||||
|
referenced_type: "type-1"
|
||||||
|
is_virtual: true
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: VBaseOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZTv0_n24_N16LowVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZTv0_n32_N16LowVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZTv0_n40_N16LowVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZTv0_n40_N16LowVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS16LowVolumeSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
enum_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker::Volume"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-8"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker::Volume"
|
||||||
|
self_type: "type-8"
|
||||||
|
}
|
||||||
|
underlying_type: "type-6"
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 1
|
||||||
|
name: "SuperSpeaker::Volume::Loud"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 2
|
||||||
|
name: "SuperSpeaker::Volume::Louder"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 3
|
||||||
|
name: "SuperSpeaker::Volume::Loudest"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 4
|
||||||
|
name: "SuperSpeaker::Volume::Lower"
|
||||||
|
}
|
||||||
|
access: private_access
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker *"
|
||||||
|
size: 8
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-1"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker *"
|
||||||
|
self_type: "type-9"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "HighVolumeSpeaker *"
|
||||||
|
size: 8
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-11"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
linker_set_key: "HighVolumeSpeaker *"
|
||||||
|
self_type: "type-12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "float *"
|
||||||
|
size: 8
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-3"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "float *"
|
||||||
|
self_type: "type-7"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "LowVolumeSpeaker *"
|
||||||
|
size: 8
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-5"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "LowVolumeSpeaker *"
|
||||||
|
self_type: "type-4"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "float"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-3"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "float"
|
||||||
|
self_type: "type-3"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: false
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "int"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-2"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "int"
|
||||||
|
self_type: "type-2"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: true
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "unsigned int"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-6"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "unsigned int"
|
||||||
|
self_type: "type-6"
|
||||||
|
}
|
||||||
|
is_unsigned: true
|
||||||
|
is_integral: true
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "void"
|
||||||
|
size: 0
|
||||||
|
alignment: 0
|
||||||
|
referenced_type: "type-10"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "void"
|
||||||
|
self_type: "type-10"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: false
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "SuperSpeaker::SpeakLouder"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-9"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-9"
|
||||||
|
function_name: "SuperSpeaker::CreateSuperSpeaker"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-2"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-8"
|
||||||
|
function_name: "SuperSpeaker::SpeakLoud"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-9"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "LowVolumeSpeaker::Speak"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-4"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "LowVolumeSpeaker::Listen"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-4"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-12"
|
||||||
|
function_name: "HighVolumeSpeaker::BadPractice"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-3"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "HighVolumeSpeaker::Speak"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "HighVolumeSpeaker::Listen"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12NotReferenced"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
}
|
||||||
|
elf_objects {
|
||||||
|
name: "_ZTV16LowVolumeSpeaker"
|
||||||
|
}
|
||||||
|
elf_objects {
|
||||||
|
name: "_ZTV17HighVolumeSpeaker"
|
||||||
|
}
|
||||||
@@ -0,0 +1,487 @@
|
|||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker"
|
||||||
|
size: 8
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-1"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker"
|
||||||
|
self_type: "type-1"
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-2"
|
||||||
|
field_offset: 32
|
||||||
|
field_name: "mSpeakderId"
|
||||||
|
access: private_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI12SuperSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS12SuperSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "HighVolumeSpeaker"
|
||||||
|
size: 8
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-11"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
linker_set_key: "HighVolumeSpeaker"
|
||||||
|
self_type: "type-11"
|
||||||
|
}
|
||||||
|
base_specifiers {
|
||||||
|
referenced_type: "type-1"
|
||||||
|
is_virtual: false
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS17HighVolumeSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "LowVolumeSpeaker"
|
||||||
|
size: 20
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-5"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "LowVolumeSpeaker"
|
||||||
|
self_type: "type-5"
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-6"
|
||||||
|
field_offset: 32
|
||||||
|
field_name: "speaker_uint_t"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-7"
|
||||||
|
field_offset: 64
|
||||||
|
field_name: "speaker_float_star"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
base_specifiers {
|
||||||
|
referenced_type: "type-1"
|
||||||
|
is_virtual: true
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: VBaseOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZTv0_n12_N16LowVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZTv0_n16_N16LowVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZTv0_n20_N16LowVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZTv0_n20_N16LowVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS16LowVolumeSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
enum_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker::Volume"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-8"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker::Volume"
|
||||||
|
self_type: "type-8"
|
||||||
|
}
|
||||||
|
underlying_type: "type-6"
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 1
|
||||||
|
name: "SuperSpeaker::Volume::Loud"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 2
|
||||||
|
name: "SuperSpeaker::Volume::Louder"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 3
|
||||||
|
name: "SuperSpeaker::Volume::Loudest"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 4
|
||||||
|
name: "SuperSpeaker::Volume::Lower"
|
||||||
|
}
|
||||||
|
access: private_access
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker *"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-1"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker *"
|
||||||
|
self_type: "type-9"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "HighVolumeSpeaker *"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-11"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
linker_set_key: "HighVolumeSpeaker *"
|
||||||
|
self_type: "type-12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "float *"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-3"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "float *"
|
||||||
|
self_type: "type-7"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "LowVolumeSpeaker *"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-5"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "LowVolumeSpeaker *"
|
||||||
|
self_type: "type-4"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "float"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-3"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "float"
|
||||||
|
self_type: "type-3"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: false
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "int"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-2"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "int"
|
||||||
|
self_type: "type-2"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: true
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "unsigned int"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-6"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "unsigned int"
|
||||||
|
self_type: "type-6"
|
||||||
|
}
|
||||||
|
is_unsigned: true
|
||||||
|
is_integral: true
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "void"
|
||||||
|
size: 0
|
||||||
|
alignment: 0
|
||||||
|
referenced_type: "type-10"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "void"
|
||||||
|
self_type: "type-10"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: false
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "SuperSpeaker::SpeakLouder"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-9"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-9"
|
||||||
|
function_name: "SuperSpeaker::CreateSuperSpeaker"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-2"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-8"
|
||||||
|
function_name: "SuperSpeaker::SpeakLoud"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-9"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "LowVolumeSpeaker::Speak"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-4"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "LowVolumeSpeaker::Listen"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-4"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-12"
|
||||||
|
function_name: "HighVolumeSpeaker::BadPractice"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-3"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "HighVolumeSpeaker::Speak"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "HighVolumeSpeaker::Listen"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12NotReferenced"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
}
|
||||||
|
elf_objects {
|
||||||
|
name: "_ZTV16LowVolumeSpeaker"
|
||||||
|
}
|
||||||
|
elf_objects {
|
||||||
|
name: "_ZTV17HighVolumeSpeaker"
|
||||||
|
}
|
||||||
@@ -0,0 +1,487 @@
|
|||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker"
|
||||||
|
size: 16
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-1"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker"
|
||||||
|
self_type: "type-1"
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-2"
|
||||||
|
field_offset: 64
|
||||||
|
field_name: "mSpeakderId"
|
||||||
|
access: private_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI12SuperSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS12SuperSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "HighVolumeSpeaker"
|
||||||
|
size: 16
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-11"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
linker_set_key: "HighVolumeSpeaker"
|
||||||
|
self_type: "type-11"
|
||||||
|
}
|
||||||
|
base_specifiers {
|
||||||
|
referenced_type: "type-1"
|
||||||
|
is_virtual: false
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS17HighVolumeSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "LowVolumeSpeaker"
|
||||||
|
size: 40
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-5"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "LowVolumeSpeaker"
|
||||||
|
self_type: "type-5"
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-6"
|
||||||
|
field_offset: 64
|
||||||
|
field_name: "speaker_uint_t"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-7"
|
||||||
|
field_offset: 128
|
||||||
|
field_name: "speaker_float_star"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
base_specifiers {
|
||||||
|
referenced_type: "type-1"
|
||||||
|
is_virtual: true
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: VBaseOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZTv0_n24_N16LowVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZTv0_n32_N16LowVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZTv0_n40_N16LowVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZTv0_n40_N16LowVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS16LowVolumeSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
enum_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker::Volume"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-8"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker::Volume"
|
||||||
|
self_type: "type-8"
|
||||||
|
}
|
||||||
|
underlying_type: "type-6"
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 1
|
||||||
|
name: "SuperSpeaker::Volume::Loud"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 2
|
||||||
|
name: "SuperSpeaker::Volume::Louder"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 3
|
||||||
|
name: "SuperSpeaker::Volume::Loudest"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 4
|
||||||
|
name: "SuperSpeaker::Volume::Lower"
|
||||||
|
}
|
||||||
|
access: private_access
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker *"
|
||||||
|
size: 8
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-1"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker *"
|
||||||
|
self_type: "type-9"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "HighVolumeSpeaker *"
|
||||||
|
size: 8
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-11"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
linker_set_key: "HighVolumeSpeaker *"
|
||||||
|
self_type: "type-12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "float *"
|
||||||
|
size: 8
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-3"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "float *"
|
||||||
|
self_type: "type-7"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "LowVolumeSpeaker *"
|
||||||
|
size: 8
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-5"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "LowVolumeSpeaker *"
|
||||||
|
self_type: "type-4"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "float"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-3"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "float"
|
||||||
|
self_type: "type-3"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: false
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "int"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-2"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "int"
|
||||||
|
self_type: "type-2"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: true
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "unsigned int"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-6"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "unsigned int"
|
||||||
|
self_type: "type-6"
|
||||||
|
}
|
||||||
|
is_unsigned: true
|
||||||
|
is_integral: true
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "void"
|
||||||
|
size: 0
|
||||||
|
alignment: 0
|
||||||
|
referenced_type: "type-10"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "void"
|
||||||
|
self_type: "type-10"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: false
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "SuperSpeaker::SpeakLouder"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-9"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-9"
|
||||||
|
function_name: "SuperSpeaker::CreateSuperSpeaker"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-2"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-8"
|
||||||
|
function_name: "SuperSpeaker::SpeakLoud"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-9"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "LowVolumeSpeaker::Speak"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-4"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "LowVolumeSpeaker::Listen"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-4"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-12"
|
||||||
|
function_name: "HighVolumeSpeaker::BadPractice"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-3"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "HighVolumeSpeaker::Speak"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "HighVolumeSpeaker::Listen"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12NotReferenced"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
}
|
||||||
|
elf_objects {
|
||||||
|
name: "_ZTV16LowVolumeSpeaker"
|
||||||
|
}
|
||||||
|
elf_objects {
|
||||||
|
name: "_ZTV17HighVolumeSpeaker"
|
||||||
|
}
|
||||||
@@ -0,0 +1,487 @@
|
|||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker"
|
||||||
|
size: 8
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-1"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker"
|
||||||
|
self_type: "type-1"
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-2"
|
||||||
|
field_offset: 32
|
||||||
|
field_name: "mSpeakderId"
|
||||||
|
access: private_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI12SuperSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS12SuperSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "HighVolumeSpeaker"
|
||||||
|
size: 8
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-11"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
linker_set_key: "HighVolumeSpeaker"
|
||||||
|
self_type: "type-11"
|
||||||
|
}
|
||||||
|
base_specifiers {
|
||||||
|
referenced_type: "type-1"
|
||||||
|
is_virtual: false
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS17HighVolumeSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "LowVolumeSpeaker"
|
||||||
|
size: 20
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-5"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "LowVolumeSpeaker"
|
||||||
|
self_type: "type-5"
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-6"
|
||||||
|
field_offset: 32
|
||||||
|
field_name: "speaker_uint_t"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-7"
|
||||||
|
field_offset: 64
|
||||||
|
field_name: "speaker_float_star"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
base_specifiers {
|
||||||
|
referenced_type: "type-1"
|
||||||
|
is_virtual: true
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: VBaseOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -12
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZTv0_n12_N16LowVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZTv0_n16_N16LowVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZTv0_n20_N16LowVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZTv0_n20_N16LowVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS16LowVolumeSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
enum_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker::Volume"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-8"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker::Volume"
|
||||||
|
self_type: "type-8"
|
||||||
|
}
|
||||||
|
underlying_type: "type-6"
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 1
|
||||||
|
name: "SuperSpeaker::Volume::Loud"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 2
|
||||||
|
name: "SuperSpeaker::Volume::Louder"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 3
|
||||||
|
name: "SuperSpeaker::Volume::Loudest"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 4
|
||||||
|
name: "SuperSpeaker::Volume::Lower"
|
||||||
|
}
|
||||||
|
access: private_access
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker *"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-1"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker *"
|
||||||
|
self_type: "type-9"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "HighVolumeSpeaker *"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-11"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
linker_set_key: "HighVolumeSpeaker *"
|
||||||
|
self_type: "type-12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "float *"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-3"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "float *"
|
||||||
|
self_type: "type-7"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "LowVolumeSpeaker *"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-5"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "LowVolumeSpeaker *"
|
||||||
|
self_type: "type-4"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "float"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-3"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "float"
|
||||||
|
self_type: "type-3"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: false
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "int"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-2"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "int"
|
||||||
|
self_type: "type-2"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: true
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "unsigned int"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-6"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "unsigned int"
|
||||||
|
self_type: "type-6"
|
||||||
|
}
|
||||||
|
is_unsigned: true
|
||||||
|
is_integral: true
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "void"
|
||||||
|
size: 0
|
||||||
|
alignment: 0
|
||||||
|
referenced_type: "type-10"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "void"
|
||||||
|
self_type: "type-10"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: false
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "SuperSpeaker::SpeakLouder"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-9"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-9"
|
||||||
|
function_name: "SuperSpeaker::CreateSuperSpeaker"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-2"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-8"
|
||||||
|
function_name: "SuperSpeaker::SpeakLoud"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-9"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "LowVolumeSpeaker::Speak"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-4"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "LowVolumeSpeaker::Listen"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-4"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-12"
|
||||||
|
function_name: "HighVolumeSpeaker::BadPractice"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-3"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "HighVolumeSpeaker::Speak"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "HighVolumeSpeaker::Listen"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12NotReferenced"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
}
|
||||||
|
elf_objects {
|
||||||
|
name: "_ZTV16LowVolumeSpeaker"
|
||||||
|
}
|
||||||
|
elf_objects {
|
||||||
|
name: "_ZTV17HighVolumeSpeaker"
|
||||||
|
}
|
||||||
@@ -0,0 +1,487 @@
|
|||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker"
|
||||||
|
size: 16
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-1"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker"
|
||||||
|
self_type: "type-1"
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-2"
|
||||||
|
field_offset: 64
|
||||||
|
field_name: "mSpeakderId"
|
||||||
|
access: private_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI12SuperSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS12SuperSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "HighVolumeSpeaker"
|
||||||
|
size: 16
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-11"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
linker_set_key: "HighVolumeSpeaker"
|
||||||
|
self_type: "type-11"
|
||||||
|
}
|
||||||
|
base_specifiers {
|
||||||
|
referenced_type: "type-1"
|
||||||
|
is_virtual: false
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS17HighVolumeSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
record_types {
|
||||||
|
type_info {
|
||||||
|
name: "LowVolumeSpeaker"
|
||||||
|
size: 40
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-5"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "LowVolumeSpeaker"
|
||||||
|
self_type: "type-5"
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-6"
|
||||||
|
field_offset: 64
|
||||||
|
field_name: "speaker_uint_t"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
fields {
|
||||||
|
referenced_type: "type-7"
|
||||||
|
field_offset: 128
|
||||||
|
field_name: "speaker_float_star"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
base_specifiers {
|
||||||
|
referenced_type: "type-1"
|
||||||
|
is_virtual: true
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
vtable_layout {
|
||||||
|
vtable_components {
|
||||||
|
kind: VBaseOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: VCallOffset
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: OffsetToTop
|
||||||
|
mangled_component_name: ""
|
||||||
|
component_value: -24
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZTv0_n24_N16LowVolumeSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZTv0_n32_N16LowVolumeSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZTv0_n40_N16LowVolumeSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZTv0_n40_N16LowVolumeSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS16LowVolumeSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
enum_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker::Volume"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-8"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker::Volume"
|
||||||
|
self_type: "type-8"
|
||||||
|
}
|
||||||
|
underlying_type: "type-6"
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 1
|
||||||
|
name: "SuperSpeaker::Volume::Loud"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 2
|
||||||
|
name: "SuperSpeaker::Volume::Louder"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 3
|
||||||
|
name: "SuperSpeaker::Volume::Loudest"
|
||||||
|
}
|
||||||
|
enum_fields {
|
||||||
|
enum_field_value: 4
|
||||||
|
name: "SuperSpeaker::Volume::Lower"
|
||||||
|
}
|
||||||
|
access: private_access
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "SuperSpeaker *"
|
||||||
|
size: 8
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-1"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
linker_set_key: "SuperSpeaker *"
|
||||||
|
self_type: "type-9"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "HighVolumeSpeaker *"
|
||||||
|
size: 8
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-11"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
linker_set_key: "HighVolumeSpeaker *"
|
||||||
|
self_type: "type-12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "float *"
|
||||||
|
size: 8
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-3"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "float *"
|
||||||
|
self_type: "type-7"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pointer_types {
|
||||||
|
type_info {
|
||||||
|
name: "LowVolumeSpeaker *"
|
||||||
|
size: 8
|
||||||
|
alignment: 8
|
||||||
|
referenced_type: "type-5"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
linker_set_key: "LowVolumeSpeaker *"
|
||||||
|
self_type: "type-4"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "float"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-3"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "float"
|
||||||
|
self_type: "type-3"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: false
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "int"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-2"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "int"
|
||||||
|
self_type: "type-2"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: true
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "unsigned int"
|
||||||
|
size: 4
|
||||||
|
alignment: 4
|
||||||
|
referenced_type: "type-6"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "unsigned int"
|
||||||
|
self_type: "type-6"
|
||||||
|
}
|
||||||
|
is_unsigned: true
|
||||||
|
is_integral: true
|
||||||
|
}
|
||||||
|
builtin_types {
|
||||||
|
type_info {
|
||||||
|
name: "void"
|
||||||
|
size: 0
|
||||||
|
alignment: 0
|
||||||
|
referenced_type: "type-10"
|
||||||
|
source_file: ""
|
||||||
|
linker_set_key: "void"
|
||||||
|
self_type: "type-10"
|
||||||
|
}
|
||||||
|
is_unsigned: false
|
||||||
|
is_integral: false
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "SuperSpeaker::SpeakLouder"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-9"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-9"
|
||||||
|
function_name: "SuperSpeaker::CreateSuperSpeaker"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-2"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-8"
|
||||||
|
function_name: "SuperSpeaker::SpeakLoud"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-9"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "LowVolumeSpeaker::Speak"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-4"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "LowVolumeSpeaker::Listen"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-4"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-12"
|
||||||
|
function_name: "HighVolumeSpeaker::BadPractice"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-3"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "HighVolumeSpeaker::Speak"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
|
function_name: "HighVolumeSpeaker::Listen"
|
||||||
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
|
parameters {
|
||||||
|
referenced_type: "type-12"
|
||||||
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
|
}
|
||||||
|
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12NotReferenced"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
}
|
||||||
|
elf_objects {
|
||||||
|
name: "_ZTV16LowVolumeSpeaker"
|
||||||
|
}
|
||||||
|
elf_objects {
|
||||||
|
name: "_ZTV17HighVolumeSpeaker"
|
||||||
|
}
|
||||||
@@ -267,6 +267,11 @@ class MyTest(unittest.TestCase):
|
|||||||
"libgolden_cpp_internal_private_struct", 8, [], True,
|
"libgolden_cpp_internal_private_struct", 8, [], True,
|
||||||
True)
|
True)
|
||||||
|
|
||||||
|
def test_libgolden_cpp_inheritance_type_changed(self):
|
||||||
|
self.prepare_and_run_abi_diff_all_archs(
|
||||||
|
"libgolden_cpp", "libgolden_cpp_inheritance_type_changed", 8, [],
|
||||||
|
True, True)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
unittest.main()
|
unittest.main()
|
||||||
|
|||||||
Reference in New Issue
Block a user