Merge changes I6345a10d,Ieed81827
* changes: Refactor header-checker tests Replace test data for test_libgolden_cpp_fabricated_function_ast_removed_diff
This commit is contained in:
@@ -9,25 +9,18 @@ import_path = os.path.abspath(os.path.join(import_path, 'utils'))
|
|||||||
sys.path.insert(1, import_path)
|
sys.path.insert(1, import_path)
|
||||||
|
|
||||||
from utils import run_header_abi_dumper
|
from utils import run_header_abi_dumper
|
||||||
from utils import copy_reference_dump_content
|
|
||||||
from module import Module
|
from module import Module
|
||||||
|
from test import INPUT_DIR
|
||||||
|
from test import EXPECTED_DIR
|
||||||
|
from test import make_and_copy_reference_dumps
|
||||||
|
|
||||||
SCRIPT_DIR = os.path.abspath(os.path.dirname(__file__))
|
|
||||||
INPUT_DIR = os.path.join(SCRIPT_DIR, 'input')
|
|
||||||
EXPECTED_DIR = os.path.join(SCRIPT_DIR, 'expected')
|
|
||||||
REFERENCE_DUMP_DIR = os.path.join(SCRIPT_DIR, 'reference_dumps')
|
|
||||||
FILE_EXTENSIONS = ['h', 'hpp', 'hxx', 'cpp', 'cc', 'c']
|
FILE_EXTENSIONS = ['h', 'hpp', 'hxx', 'cpp', 'cc', 'c']
|
||||||
|
|
||||||
def make_and_copy_reference_dumps(module, default_cflags=[],
|
|
||||||
reference_dump_dir=REFERENCE_DUMP_DIR):
|
|
||||||
lsdump_content = module.make_dump(default_cflags)
|
|
||||||
return copy_reference_dump_content(module.get_dump_name(), lsdump_content,
|
|
||||||
reference_dump_dir, '', module.arch)
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
patt = re.compile(
|
patt = re.compile(
|
||||||
'^.*\\.(?:' + \
|
'^.*\\.(?:' +
|
||||||
'|'.join('(?:' + re.escape(ext) + ')' for ext in FILE_EXTENSIONS) + \
|
'|'.join('(?:' + re.escape(ext) + ')' for ext in FILE_EXTENSIONS) +
|
||||||
')$')
|
')$')
|
||||||
input_dir_prefix_len = len(INPUT_DIR) + 1
|
input_dir_prefix_len = len(INPUT_DIR) + 1
|
||||||
for base, dirnames, filenames in os.walk(INPUT_DIR):
|
for base, dirnames, filenames in os.walk(INPUT_DIR):
|
||||||
@@ -48,9 +41,10 @@ def main():
|
|||||||
f.write(output_content)
|
f.write(output_content)
|
||||||
modules = Module.get_test_modules()
|
modules = Module.get_test_modules()
|
||||||
for module in modules:
|
for module in modules:
|
||||||
make_and_copy_reference_dumps(module)
|
print('Created abi dump at', make_and_copy_reference_dumps(module))
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
sys.exit(main())
|
sys.exit(main())
|
||||||
|
|||||||
@@ -11,26 +11,25 @@ sys.path.insert(1, import_path)
|
|||||||
from utils import run_header_abi_dumper
|
from utils import run_header_abi_dumper
|
||||||
from utils import run_header_abi_dumper_on_file
|
from utils import run_header_abi_dumper_on_file
|
||||||
from utils import run_header_abi_linker
|
from utils import run_header_abi_linker
|
||||||
from utils import TARGET_ARCHS
|
|
||||||
from utils import SOURCE_ABI_DUMP_EXT
|
from utils import SOURCE_ABI_DUMP_EXT
|
||||||
|
|
||||||
|
|
||||||
SCRIPT_DIR = os.path.abspath(os.path.dirname(__file__))
|
SCRIPT_DIR = os.path.abspath(os.path.dirname(__file__))
|
||||||
INPUT_DIR = os.path.join(SCRIPT_DIR, 'input')
|
|
||||||
EXPECTED_DIR = os.path.join(SCRIPT_DIR, 'expected')
|
|
||||||
REF_DUMP_DIR = os.path.join(SCRIPT_DIR, 'reference_dumps')
|
|
||||||
ARCH_TARGET_CFLAGS = {
|
ARCH_TARGET_CFLAGS = {
|
||||||
'arm': ['-target', 'arm-linux-androideabi'],
|
'arm': ('-target', 'arm-linux-androideabi'),
|
||||||
'arm64': ['-target', 'aarch64-linux-android'],
|
'arm64': ('-target', 'aarch64-linux-android'),
|
||||||
'x86': ['-target', 'i386-linux-androideabi'],
|
'x86': ('-target', 'i386-linux-androideabi'),
|
||||||
'x86_64': ['-target', 'x86_64-linux-android'],
|
'x86_64': ('-target', 'x86_64-linux-android'),
|
||||||
'mips': ['-target', 'mips-linux-androideabi'],
|
'mips': ('-target', 'mips-linux-androideabi'),
|
||||||
'mips64': ['-target', 'mips64-linux-android'],
|
'mips64': ('-target', 'mips64-linux-android'),
|
||||||
}
|
}
|
||||||
|
TARGET_ARCHES = ['arm', 'arm64', 'x86', 'x86_64', 'mips', 'mips64']
|
||||||
|
|
||||||
|
|
||||||
def relative_to_abs_path(relative_path):
|
def relative_to_abs_path(relative_path):
|
||||||
return os.path.join(SCRIPT_DIR, relative_path)
|
return os.path.join(SCRIPT_DIR, relative_path)
|
||||||
|
|
||||||
|
|
||||||
def relative_to_abs_path_list(relative_path_list):
|
def relative_to_abs_path_list(relative_path_list):
|
||||||
abs_paths = []
|
abs_paths = []
|
||||||
for relative_path in relative_path_list:
|
for relative_path in relative_path_list:
|
||||||
@@ -42,17 +41,16 @@ class Module(object):
|
|||||||
def __init__(self, name, arch, cflags, export_include_dirs):
|
def __init__(self, name, arch, cflags, export_include_dirs):
|
||||||
self.name = name
|
self.name = name
|
||||||
self.arch = arch
|
self.arch = arch
|
||||||
self.cflags = cflags
|
self.cflags = tuple(cflags)
|
||||||
self.arch_cflags = ['']
|
self.arch_cflags = ARCH_TARGET_CFLAGS.get(self.arch, tuple())
|
||||||
if self.arch != '':
|
self.export_include_dirs = relative_to_abs_path_list(
|
||||||
self.arch_cflags = ARCH_TARGET_CFLAGS.get(self.arch)
|
export_include_dirs)
|
||||||
self.export_include_dirs = relative_to_abs_path_list(export_include_dirs)
|
|
||||||
|
|
||||||
def get_dump_name(self):
|
def get_dump_name(self):
|
||||||
"""Returns the module name followed by file extension."""
|
"""Returns the module name followed by file extension."""
|
||||||
raise NotImplementedError()
|
raise NotImplementedError()
|
||||||
|
|
||||||
def make_dump(self, default_cflags):
|
def make_dump(self):
|
||||||
"""Returns the dump content as a string."""
|
"""Returns the dump content as a string."""
|
||||||
raise NotImplementedError()
|
raise NotImplementedError()
|
||||||
|
|
||||||
@@ -61,8 +59,10 @@ class Module(object):
|
|||||||
raise NotImplementedError()
|
raise NotImplementedError()
|
||||||
|
|
||||||
def mutate_for_all_arches(self):
|
def mutate_for_all_arches(self):
|
||||||
|
if self.arch:
|
||||||
|
return [self]
|
||||||
modules = []
|
modules = []
|
||||||
for target_arch in TARGET_ARCHS:
|
for target_arch in TARGET_ARCHES:
|
||||||
modules.append(self.mutate_for_arch(target_arch))
|
modules.append(self.mutate_for_arch(target_arch))
|
||||||
return modules
|
return modules
|
||||||
|
|
||||||
@@ -70,13 +70,12 @@ class Module(object):
|
|||||||
def get_test_modules():
|
def get_test_modules():
|
||||||
modules = []
|
modules = []
|
||||||
for module in TEST_MODULES.values():
|
for module in TEST_MODULES.values():
|
||||||
if module.arch == '':
|
|
||||||
modules += module.mutate_for_all_arches()
|
modules += module.mutate_for_all_arches()
|
||||||
return modules
|
return modules
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def get_test_module_by_name(name):
|
def get_test_modules_by_name(name):
|
||||||
return TEST_MODULES.get(name)
|
return TEST_MODULES.get(name).mutate_for_all_arches()
|
||||||
|
|
||||||
|
|
||||||
class SdumpModule(Module):
|
class SdumpModule(Module):
|
||||||
@@ -90,7 +89,7 @@ class SdumpModule(Module):
|
|||||||
def get_dump_name(self):
|
def get_dump_name(self):
|
||||||
return self.name + '.sdump'
|
return self.name + '.sdump'
|
||||||
|
|
||||||
def make_dump(self, default_cflags):
|
def make_dump(self):
|
||||||
return run_header_abi_dumper(
|
return run_header_abi_dumper(
|
||||||
self.src, remove_absolute_paths=True, cflags=self.cflags,
|
self.src, remove_absolute_paths=True, cflags=self.cflags,
|
||||||
export_include_dirs=self.export_include_dirs,
|
export_include_dirs=self.export_include_dirs,
|
||||||
@@ -102,8 +101,8 @@ class SdumpModule(Module):
|
|||||||
|
|
||||||
|
|
||||||
class LsdumpModule(Module):
|
class LsdumpModule(Module):
|
||||||
def __init__(self, name, arch, srcs, version_script, cflags,
|
def __init__(self, name, srcs, version_script, export_include_dirs,
|
||||||
export_include_dirs, api, dumper_flags=tuple(),
|
cflags=tuple(), arch='', api='current', dumper_flags=tuple(),
|
||||||
linker_flags=tuple()):
|
linker_flags=tuple()):
|
||||||
super(LsdumpModule, self).__init__(name, arch, cflags,
|
super(LsdumpModule, self).__init__(name, arch, cflags,
|
||||||
export_include_dirs)
|
export_include_dirs)
|
||||||
@@ -116,28 +115,28 @@ class LsdumpModule(Module):
|
|||||||
def get_dump_name(self):
|
def get_dump_name(self):
|
||||||
return self.name + SOURCE_ABI_DUMP_EXT
|
return self.name + SOURCE_ABI_DUMP_EXT
|
||||||
|
|
||||||
def make_dump(self, default_cflags):
|
def make_dump(self):
|
||||||
""" For each source file, produce a .sdump file, and link them to form
|
"""For each source file, produce a .sdump file, and link them to form
|
||||||
an lsump file"""
|
an lsump file."""
|
||||||
dumps_to_link = []
|
dumps_to_link = []
|
||||||
with tempfile.TemporaryDirectory() as tmp:
|
with tempfile.TemporaryDirectory() as tmp:
|
||||||
output_lsdump = os.path.join(tmp, self.get_dump_name())
|
output_lsdump = os.path.join(tmp, self.get_dump_name())
|
||||||
for src in self.srcs:
|
for src in self.srcs:
|
||||||
output_path = os.path.join(tmp, os.path.basename(src)) + '.sdump'
|
output_path = os.path.join(tmp,
|
||||||
|
os.path.basename(src) + '.sdump')
|
||||||
dumps_to_link.append(output_path)
|
dumps_to_link.append(output_path)
|
||||||
run_header_abi_dumper_on_file(
|
run_header_abi_dumper_on_file(
|
||||||
src, output_path, self.export_include_dirs,
|
src, output_path, self.export_include_dirs,
|
||||||
self.cflags + self.arch_cflags + default_cflags,
|
self.cflags + self.arch_cflags,
|
||||||
self.dumper_flags)
|
self.dumper_flags)
|
||||||
return run_header_abi_linker(output_lsdump, dumps_to_link,
|
return run_header_abi_linker(output_lsdump, dumps_to_link,
|
||||||
self.version_script, self.api,
|
self.version_script, self.api,
|
||||||
self.arch, self.linker_flags)
|
self.arch, self.linker_flags)
|
||||||
|
|
||||||
def mutate_for_arch(self, target_arch):
|
def mutate_for_arch(self, target_arch):
|
||||||
return LsdumpModule(self.name, target_arch, self.srcs,
|
return LsdumpModule(self.name, self.srcs, self.version_script,
|
||||||
self.version_script, self.cflags,
|
self.export_include_dirs, self.cflags, target_arch,
|
||||||
self.export_include_dirs, self.api,
|
self.api, self.dumper_flags, self.linker_flags)
|
||||||
self.dumper_flags, self.linker_flags)
|
|
||||||
|
|
||||||
|
|
||||||
TEST_MODULES = [
|
TEST_MODULES = [
|
||||||
@@ -159,9 +158,6 @@ TEST_MODULES = [
|
|||||||
],
|
],
|
||||||
version_script='integration/c_and_cpp/map.txt',
|
version_script='integration/c_and_cpp/map.txt',
|
||||||
export_include_dirs=['integration/c_and_cpp/include'],
|
export_include_dirs=['integration/c_and_cpp/include'],
|
||||||
cflags=[],
|
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libc_and_cpp_with_opaque_ptr_a',
|
name='libc_and_cpp_with_opaque_ptr_a',
|
||||||
@@ -172,8 +168,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/c_and_cpp/map.txt',
|
version_script='integration/c_and_cpp/map.txt',
|
||||||
export_include_dirs=['integration/c_and_cpp/include'],
|
export_include_dirs=['integration/c_and_cpp/include'],
|
||||||
cflags=['-DOPAQUE_STRUCT_A=1'],
|
cflags=['-DOPAQUE_STRUCT_A=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libc_and_cpp_with_opaque_ptr_b',
|
name='libc_and_cpp_with_opaque_ptr_b',
|
||||||
@@ -184,8 +178,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/c_and_cpp/map.txt',
|
version_script='integration/c_and_cpp/map.txt',
|
||||||
export_include_dirs=['integration/c_and_cpp/include'],
|
export_include_dirs=['integration/c_and_cpp/include'],
|
||||||
cflags=['-DOPAQUE_STRUCT_B=1'],
|
cflags=['-DOPAQUE_STRUCT_B=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libc_and_cpp_with_unused_struct',
|
name='libc_and_cpp_with_unused_struct',
|
||||||
@@ -196,8 +188,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/c_and_cpp/map.txt',
|
version_script='integration/c_and_cpp/map.txt',
|
||||||
export_include_dirs=['integration/c_and_cpp/include'],
|
export_include_dirs=['integration/c_and_cpp/include'],
|
||||||
cflags=['-DINCLUDE_UNUSED_STRUCTS=1'],
|
cflags=['-DINCLUDE_UNUSED_STRUCTS=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libc_and_cpp_with_unused_cstruct',
|
name='libc_and_cpp_with_unused_cstruct',
|
||||||
@@ -208,8 +198,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/c_and_cpp/map.txt',
|
version_script='integration/c_and_cpp/map.txt',
|
||||||
export_include_dirs=['integration/c_and_cpp/include'],
|
export_include_dirs=['integration/c_and_cpp/include'],
|
||||||
cflags=['-DINCLUDE_UNUSED_STRUCTS=1', '-DMAKE_UNUSED_STRUCT_C=1'],
|
cflags=['-DINCLUDE_UNUSED_STRUCTS=1', '-DMAKE_UNUSED_STRUCT_C=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp',
|
name='libgolden_cpp',
|
||||||
@@ -220,9 +208,6 @@ TEST_MODULES = [
|
|||||||
],
|
],
|
||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=[],
|
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_odr',
|
name='libgolden_cpp_odr',
|
||||||
@@ -234,8 +219,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DTEST_ODR'],
|
cflags=['-DTEST_ODR'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_add_function',
|
name='libgolden_cpp_add_function',
|
||||||
@@ -247,8 +230,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map_add_function.txt',
|
version_script='integration/cpp/gold/map_add_function.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_ADD_FUNCTION=1'],
|
cflags=['-DGOLDEN_ADD_FUNCTION=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_add_function_and_unexported_elf',
|
name='libgolden_cpp_add_function_and_unexported_elf',
|
||||||
@@ -263,6 +244,16 @@ TEST_MODULES = [
|
|||||||
arch='',
|
arch='',
|
||||||
api='current',
|
api='current',
|
||||||
),
|
),
|
||||||
|
LsdumpModule(
|
||||||
|
name='libgolden_cpp_add_function_sybmol_only',
|
||||||
|
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_add_function.txt',
|
||||||
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_change_function_access',
|
name='libgolden_cpp_change_function_access',
|
||||||
srcs=[
|
srcs=[
|
||||||
@@ -273,8 +264,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_CHANGE_FUNCTION_ACCESS=1'],
|
cflags=['-DGOLDEN_CHANGE_FUNCTION_ACCESS=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_add_global_variable',
|
name='libgolden_cpp_add_global_variable',
|
||||||
@@ -286,8 +275,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map_added_globvar.txt',
|
version_script='integration/cpp/gold/map_added_globvar.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_ADD_GLOBVAR=1'],
|
cflags=['-DGOLDEN_ADD_GLOBVAR=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_add_global_variable_private',
|
name='libgolden_cpp_add_global_variable_private',
|
||||||
@@ -299,8 +286,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map_added_globvar.txt',
|
version_script='integration/cpp/gold/map_added_globvar.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_ADD_GLOBVAR=1', '-DGOLDEN_ADD_GLOBVAR_PRIVATE'],
|
cflags=['-DGOLDEN_ADD_GLOBVAR=1', '-DGOLDEN_ADD_GLOBVAR_PRIVATE'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_return_type_diff',
|
name='libgolden_cpp_return_type_diff',
|
||||||
@@ -312,8 +297,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_RETURN_TYPE_DIFF=1'],
|
cflags=['-DGOLDEN_RETURN_TYPE_DIFF=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_parameter_type_diff',
|
name='libgolden_cpp_parameter_type_diff',
|
||||||
@@ -325,8 +308,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map_parameter_type_diff.txt',
|
version_script='integration/cpp/gold/map_parameter_type_diff.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_PARAMETER_TYPE_DIFF=1'],
|
cflags=['-DGOLDEN_PARAMETER_TYPE_DIFF=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_vtable_diff',
|
name='libgolden_cpp_vtable_diff',
|
||||||
@@ -338,8 +319,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_VTABLE_DIFF=1'],
|
cflags=['-DGOLDEN_VTABLE_DIFF=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_member_diff',
|
name='libgolden_cpp_member_diff',
|
||||||
@@ -351,8 +330,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_MEMBER_DIFF=1'],
|
cflags=['-DGOLDEN_MEMBER_DIFF=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_member_fake_diff',
|
name='libgolden_cpp_member_fake_diff',
|
||||||
@@ -364,8 +341,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_MEMBER_FAKE_DIFF=1'],
|
cflags=['-DGOLDEN_MEMBER_FAKE_DIFF=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_member_cv_diff',
|
name='libgolden_cpp_member_cv_diff',
|
||||||
@@ -377,8 +352,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_MEMBER_CV_DIFF=1'],
|
cflags=['-DGOLDEN_MEMBER_CV_DIFF=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_change_member_access',
|
name='libgolden_cpp_change_member_access',
|
||||||
@@ -390,8 +363,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_CHANGE_MEMBER_ACCESS=1'],
|
cflags=['-DGOLDEN_CHANGE_MEMBER_ACCESS=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_member_integral_type_diff',
|
name='libgolden_cpp_member_integral_type_diff',
|
||||||
@@ -403,8 +374,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_MEMBER_INTEGRAL_TYPE_DIFF=1'],
|
cflags=['-DGOLDEN_MEMBER_INTEGRAL_TYPE_DIFF=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_enum_diff',
|
name='libgolden_cpp_enum_diff',
|
||||||
@@ -416,8 +385,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_ENUM_DIFF=1'],
|
cflags=['-DGOLDEN_ENUM_DIFF=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_enum_extended',
|
name='libgolden_cpp_enum_extended',
|
||||||
@@ -429,8 +396,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_ENUM_EXTENSION=1'],
|
cflags=['-DGOLDEN_ENUM_EXTENSION=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_unreferenced_elf_symbol_removed',
|
name='libgolden_cpp_unreferenced_elf_symbol_removed',
|
||||||
@@ -441,18 +406,12 @@ TEST_MODULES = [
|
|||||||
],
|
],
|
||||||
version_script='integration/cpp/gold/map_elf_symbol_removed.txt',
|
version_script='integration/cpp/gold/map_elf_symbol_removed.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=[],
|
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libreproducability',
|
name='libreproducability',
|
||||||
srcs=['integration/c_and_cpp/reproducability.c'],
|
srcs=['integration/c_and_cpp/reproducability.c'],
|
||||||
version_script='integration/c_and_cpp/repro_map.txt',
|
version_script='integration/c_and_cpp/repro_map.txt',
|
||||||
export_include_dirs=['integration/c_and_cpp/include'],
|
export_include_dirs=['integration/c_and_cpp/include'],
|
||||||
cflags=[],
|
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_member_name_changed',
|
name='libgolden_cpp_member_name_changed',
|
||||||
@@ -464,8 +423,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_CHANGE_MEMBER_NAME_SAME_OFFSET=1'],
|
cflags=['-DGOLDEN_CHANGE_MEMBER_NAME_SAME_OFFSET=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_function_pointer',
|
name='libgolden_cpp_function_pointer',
|
||||||
@@ -477,8 +434,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_FUNCTION_POINTER=1'],
|
cflags=['-DGOLDEN_FUNCTION_POINTER=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_function_pointer_parameter_added',
|
name='libgolden_cpp_function_pointer_parameter_added',
|
||||||
@@ -491,8 +446,6 @@ TEST_MODULES = [
|
|||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_FUNCTION_POINTER_ADD_PARAM=1',
|
cflags=['-DGOLDEN_FUNCTION_POINTER_ADD_PARAM=1',
|
||||||
'-DGOLDEN_FUNCTION_POINTER=1'],
|
'-DGOLDEN_FUNCTION_POINTER=1'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_internal_public_struct',
|
name='libgolden_cpp_internal_public_struct',
|
||||||
@@ -505,8 +458,6 @@ TEST_MODULES = [
|
|||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_WITH_INTERNAL_STRUCT',
|
cflags=['-DGOLDEN_WITH_INTERNAL_STRUCT',
|
||||||
'-DGOLDEN_WITH_PUBLIC_INTERNAL_STRUCT'],
|
'-DGOLDEN_WITH_PUBLIC_INTERNAL_STRUCT'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_internal_private_struct',
|
name='libgolden_cpp_internal_private_struct',
|
||||||
@@ -518,8 +469,6 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_WITH_INTERNAL_STRUCT'],
|
cflags=['-DGOLDEN_WITH_INTERNAL_STRUCT'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_inheritance_type_changed',
|
name='libgolden_cpp_inheritance_type_changed',
|
||||||
@@ -531,17 +480,12 @@ TEST_MODULES = [
|
|||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=['-DGOLDEN_CHANGE_INHERITANCE_TYPE'],
|
cflags=['-DGOLDEN_CHANGE_INHERITANCE_TYPE'],
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libpure_virtual_function',
|
name='libpure_virtual_function',
|
||||||
srcs=['integration/cpp/pure_virtual/pure_virtual_function.cpp'],
|
srcs=['integration/cpp/pure_virtual/pure_virtual_function.cpp'],
|
||||||
export_include_dirs=['integration/cpp/pure_virtual/include'],
|
export_include_dirs=['integration/cpp/pure_virtual/include'],
|
||||||
version_script='',
|
version_script='',
|
||||||
cflags=[],
|
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
),
|
),
|
||||||
LsdumpModule(
|
LsdumpModule(
|
||||||
name='libgolden_cpp_json',
|
name='libgolden_cpp_json',
|
||||||
@@ -552,9 +496,6 @@ TEST_MODULES = [
|
|||||||
],
|
],
|
||||||
version_script='integration/cpp/gold/map.txt',
|
version_script='integration/cpp/gold/map.txt',
|
||||||
export_include_dirs=['integration/cpp/gold/include'],
|
export_include_dirs=['integration/cpp/gold/include'],
|
||||||
cflags=[],
|
|
||||||
arch='',
|
|
||||||
api='current',
|
|
||||||
dumper_flags=['-output-format', 'Json'],
|
dumper_flags=['-output-format', 'Json'],
|
||||||
linker_flags=['-input-format', 'Json', '-output-format', 'Json']
|
linker_flags=['-input-format', 'Json', '-output-format', 'Json']
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -1,14 +1,75 @@
|
|||||||
|
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
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI12SuperSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: true
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: true
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS12SuperSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
record_types {
|
record_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "HighVolumeSpeaker"
|
name: "HighVolumeSpeaker"
|
||||||
size: 8
|
size: 8
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "HighVolumeSpeaker"
|
referenced_type: "type-11"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
linker_set_key: "HighVolumeSpeaker"
|
linker_set_key: "HighVolumeSpeaker"
|
||||||
|
self_type: "type-11"
|
||||||
}
|
}
|
||||||
base_specifiers {
|
base_specifiers {
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
is_virtual: false
|
is_virtual: false
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
@@ -17,31 +78,37 @@ record_types {
|
|||||||
kind: OffsetToTop
|
kind: OffsetToTop
|
||||||
mangled_component_name: ""
|
mangled_component_name: ""
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: RTTI
|
kind: RTTI
|
||||||
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: CompleteDtorPointer
|
kind: CompleteDtorPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: DeletingDtorPointer
|
kind: DeletingDtorPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
access: public_access
|
access: public_access
|
||||||
@@ -55,24 +122,25 @@ record_types {
|
|||||||
name: "LowVolumeSpeaker"
|
name: "LowVolumeSpeaker"
|
||||||
size: 16
|
size: 16
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "LowVolumeSpeaker"
|
referenced_type: "type-5"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
linker_set_key: "LowVolumeSpeaker"
|
linker_set_key: "LowVolumeSpeaker"
|
||||||
|
self_type: "type-5"
|
||||||
}
|
}
|
||||||
fields {
|
fields {
|
||||||
referenced_type: "unsigned int"
|
referenced_type: "type-6"
|
||||||
field_offset: 64
|
field_offset: 64
|
||||||
field_name: "speaker_uint_t"
|
field_name: "speaker_uint_t"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
fields {
|
fields {
|
||||||
referenced_type: "float *"
|
referenced_type: "type-7"
|
||||||
field_offset: 96
|
field_offset: 96
|
||||||
field_name: "speaker_float_star"
|
field_name: "speaker_float_star"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
base_specifiers {
|
base_specifiers {
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
is_virtual: false
|
is_virtual: false
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
@@ -81,31 +149,37 @@ record_types {
|
|||||||
kind: OffsetToTop
|
kind: OffsetToTop
|
||||||
mangled_component_name: ""
|
mangled_component_name: ""
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: RTTI
|
kind: RTTI
|
||||||
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: CompleteDtorPointer
|
kind: CompleteDtorPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: DeletingDtorPointer
|
kind: DeletingDtorPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
access: public_access
|
access: public_access
|
||||||
@@ -114,118 +188,58 @@ record_types {
|
|||||||
unique_id: "_ZTS16LowVolumeSpeaker"
|
unique_id: "_ZTS16LowVolumeSpeaker"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
record_types {
|
|
||||||
type_info {
|
|
||||||
name: "SuperSpeaker"
|
|
||||||
size: 8
|
|
||||||
alignment: 4
|
|
||||||
referenced_type: "SuperSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
|
||||||
linker_set_key: "SuperSpeaker"
|
|
||||||
}
|
|
||||||
fields {
|
|
||||||
referenced_type: "int"
|
|
||||||
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"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
enum_types {
|
enum_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "SuperSpeaker::Volume"
|
name: "SuperSpeaker::Volume"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "SuperSpeaker::Volume"
|
referenced_type: "type-8"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
linker_set_key: "SuperSpeaker::Volume"
|
linker_set_key: "SuperSpeaker::Volume"
|
||||||
|
self_type: "type-8"
|
||||||
}
|
}
|
||||||
underlying_type: "unsigned int"
|
underlying_type: "type-6"
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 1
|
enum_field_value: 1
|
||||||
name: "SuperSpeaker::Volume::Loud"
|
name: "SuperSpeaker::Loud"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 2
|
enum_field_value: 2
|
||||||
name: "SuperSpeaker::Volume::Louder"
|
name: "SuperSpeaker::Louder"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 3
|
enum_field_value: 3
|
||||||
name: "SuperSpeaker::Volume::Loudest"
|
name: "SuperSpeaker::Loudest"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 4
|
enum_field_value: 0
|
||||||
name: "SuperSpeaker::Volume::Lower"
|
name: "SuperSpeaker::Lower"
|
||||||
}
|
}
|
||||||
access: private_access
|
access: private_access
|
||||||
tag_info {
|
tag_info {
|
||||||
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
pointer_types {
|
|
||||||
type_info {
|
|
||||||
name: "HighVolumeSpeaker *"
|
|
||||||
size: 4
|
|
||||||
alignment: 4
|
|
||||||
referenced_type: "HighVolumeSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
|
||||||
linker_set_key: "HighVolumeSpeaker *"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
pointer_types {
|
|
||||||
type_info {
|
|
||||||
name: "LowVolumeSpeaker *"
|
|
||||||
size: 4
|
|
||||||
alignment: 4
|
|
||||||
referenced_type: "LowVolumeSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
|
||||||
linker_set_key: "LowVolumeSpeaker *"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
pointer_types {
|
pointer_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "SuperSpeaker *"
|
name: "SuperSpeaker *"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
linker_set_key: "SuperSpeaker *"
|
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 {
|
pointer_types {
|
||||||
@@ -233,9 +247,21 @@ pointer_types {
|
|||||||
name: "float *"
|
name: "float *"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
linker_set_key: "float *"
|
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 {
|
builtin_types {
|
||||||
@@ -243,9 +269,10 @@ builtin_types {
|
|||||||
name: "float"
|
name: "float"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "float"
|
linker_set_key: "float"
|
||||||
|
self_type: "type-3"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: false
|
is_integral: false
|
||||||
@@ -255,9 +282,10 @@ builtin_types {
|
|||||||
name: "int"
|
name: "int"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "int"
|
referenced_type: "type-2"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "int"
|
linker_set_key: "int"
|
||||||
|
self_type: "type-2"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: true
|
is_integral: true
|
||||||
@@ -267,9 +295,10 @@ builtin_types {
|
|||||||
name: "unsigned int"
|
name: "unsigned int"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "unsigned int"
|
referenced_type: "type-6"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "unsigned int"
|
linker_set_key: "unsigned int"
|
||||||
|
self_type: "type-6"
|
||||||
}
|
}
|
||||||
is_unsigned: true
|
is_unsigned: true
|
||||||
is_integral: true
|
is_integral: true
|
||||||
@@ -279,127 +308,188 @@ builtin_types {
|
|||||||
name: "void"
|
name: "void"
|
||||||
size: 0
|
size: 0
|
||||||
alignment: 0
|
alignment: 0
|
||||||
referenced_type: "void"
|
referenced_type: "type-10"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "void"
|
linker_set_key: "void"
|
||||||
|
self_type: "type-10"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: false
|
is_integral: false
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "SuperSpeaker *"
|
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"
|
function_name: "SuperSpeaker::CreateSuperSpeaker"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "int"
|
referenced_type: "type-2"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "SuperSpeaker::Volume"
|
return_type: "type-8"
|
||||||
function_name: "SuperSpeaker::SpeakLoud"
|
function_name: "SuperSpeaker::SpeakLoud"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "SuperSpeaker *"
|
referenced_type: "type-9"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
|
function_name: "SuperSpeaker::~SuperSpeaker"
|
||||||
|
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: "_ZN12SuperSpeakerD2Ev"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
function_name: "LowVolumeSpeaker::Speak"
|
function_name: "LowVolumeSpeaker::Speak"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "LowVolumeSpeaker *"
|
referenced_type: "type-4"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "LowVolumeSpeaker::Listen"
|
function_name: "LowVolumeSpeaker::Listen"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "LowVolumeSpeaker *"
|
referenced_type: "type-4"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "HighVolumeSpeaker *"
|
return_type: "type-12"
|
||||||
function_name: "HighVolumeSpeaker::BadPractice"
|
function_name: "HighVolumeSpeaker::BadPractice"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "HighVolumeSpeaker::Speak"
|
function_name: "HighVolumeSpeaker::Speak"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "HighVolumeSpeaker::Listen"
|
function_name: "HighVolumeSpeaker::Listen"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12NotReferenced"
|
name: "_ZN12NotReferenced"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeakerD2Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker13AddedFunctionEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_objects {
|
elf_objects {
|
||||||
name: "_ZTV16LowVolumeSpeaker"
|
name: "_ZTV16LowVolumeSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_objects {
|
elf_objects {
|
||||||
name: "_ZTV17HighVolumeSpeaker"
|
name: "_ZTV17HighVolumeSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
@@ -1,14 +1,75 @@
|
|||||||
|
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
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI12SuperSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: true
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: true
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS12SuperSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
record_types {
|
record_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "HighVolumeSpeaker"
|
name: "HighVolumeSpeaker"
|
||||||
size: 16
|
size: 16
|
||||||
alignment: 8
|
alignment: 8
|
||||||
referenced_type: "HighVolumeSpeaker"
|
referenced_type: "type-11"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
linker_set_key: "HighVolumeSpeaker"
|
linker_set_key: "HighVolumeSpeaker"
|
||||||
|
self_type: "type-11"
|
||||||
}
|
}
|
||||||
base_specifiers {
|
base_specifiers {
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
is_virtual: false
|
is_virtual: false
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
@@ -17,31 +78,37 @@ record_types {
|
|||||||
kind: OffsetToTop
|
kind: OffsetToTop
|
||||||
mangled_component_name: ""
|
mangled_component_name: ""
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: RTTI
|
kind: RTTI
|
||||||
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: CompleteDtorPointer
|
kind: CompleteDtorPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: DeletingDtorPointer
|
kind: DeletingDtorPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
access: public_access
|
access: public_access
|
||||||
@@ -55,24 +122,25 @@ record_types {
|
|||||||
name: "LowVolumeSpeaker"
|
name: "LowVolumeSpeaker"
|
||||||
size: 24
|
size: 24
|
||||||
alignment: 8
|
alignment: 8
|
||||||
referenced_type: "LowVolumeSpeaker"
|
referenced_type: "type-5"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
linker_set_key: "LowVolumeSpeaker"
|
linker_set_key: "LowVolumeSpeaker"
|
||||||
|
self_type: "type-5"
|
||||||
}
|
}
|
||||||
fields {
|
fields {
|
||||||
referenced_type: "unsigned int"
|
referenced_type: "type-6"
|
||||||
field_offset: 96
|
field_offset: 96
|
||||||
field_name: "speaker_uint_t"
|
field_name: "speaker_uint_t"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
fields {
|
fields {
|
||||||
referenced_type: "float *"
|
referenced_type: "type-7"
|
||||||
field_offset: 128
|
field_offset: 128
|
||||||
field_name: "speaker_float_star"
|
field_name: "speaker_float_star"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
base_specifiers {
|
base_specifiers {
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
is_virtual: false
|
is_virtual: false
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
@@ -81,31 +149,37 @@ record_types {
|
|||||||
kind: OffsetToTop
|
kind: OffsetToTop
|
||||||
mangled_component_name: ""
|
mangled_component_name: ""
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: RTTI
|
kind: RTTI
|
||||||
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: CompleteDtorPointer
|
kind: CompleteDtorPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: DeletingDtorPointer
|
kind: DeletingDtorPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
access: public_access
|
access: public_access
|
||||||
@@ -114,118 +188,58 @@ record_types {
|
|||||||
unique_id: "_ZTS16LowVolumeSpeaker"
|
unique_id: "_ZTS16LowVolumeSpeaker"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
record_types {
|
|
||||||
type_info {
|
|
||||||
name: "SuperSpeaker"
|
|
||||||
size: 16
|
|
||||||
alignment: 8
|
|
||||||
referenced_type: "SuperSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
|
||||||
linker_set_key: "SuperSpeaker"
|
|
||||||
}
|
|
||||||
fields {
|
|
||||||
referenced_type: "int"
|
|
||||||
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"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
enum_types {
|
enum_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "SuperSpeaker::Volume"
|
name: "SuperSpeaker::Volume"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "SuperSpeaker::Volume"
|
referenced_type: "type-8"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
linker_set_key: "SuperSpeaker::Volume"
|
linker_set_key: "SuperSpeaker::Volume"
|
||||||
|
self_type: "type-8"
|
||||||
}
|
}
|
||||||
underlying_type: "unsigned int"
|
underlying_type: "type-6"
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 1
|
enum_field_value: 1
|
||||||
name: "SuperSpeaker::Volume::Loud"
|
name: "SuperSpeaker::Loud"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 2
|
enum_field_value: 2
|
||||||
name: "SuperSpeaker::Volume::Louder"
|
name: "SuperSpeaker::Louder"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 3
|
enum_field_value: 3
|
||||||
name: "SuperSpeaker::Volume::Loudest"
|
name: "SuperSpeaker::Loudest"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 4
|
enum_field_value: 0
|
||||||
name: "SuperSpeaker::Volume::Lower"
|
name: "SuperSpeaker::Lower"
|
||||||
}
|
}
|
||||||
access: private_access
|
access: private_access
|
||||||
tag_info {
|
tag_info {
|
||||||
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
pointer_types {
|
|
||||||
type_info {
|
|
||||||
name: "HighVolumeSpeaker *"
|
|
||||||
size: 8
|
|
||||||
alignment: 8
|
|
||||||
referenced_type: "HighVolumeSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
|
||||||
linker_set_key: "HighVolumeSpeaker *"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
pointer_types {
|
|
||||||
type_info {
|
|
||||||
name: "LowVolumeSpeaker *"
|
|
||||||
size: 8
|
|
||||||
alignment: 8
|
|
||||||
referenced_type: "LowVolumeSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
|
||||||
linker_set_key: "LowVolumeSpeaker *"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
pointer_types {
|
pointer_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "SuperSpeaker *"
|
name: "SuperSpeaker *"
|
||||||
size: 8
|
size: 8
|
||||||
alignment: 8
|
alignment: 8
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
linker_set_key: "SuperSpeaker *"
|
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 {
|
pointer_types {
|
||||||
@@ -233,9 +247,21 @@ pointer_types {
|
|||||||
name: "float *"
|
name: "float *"
|
||||||
size: 8
|
size: 8
|
||||||
alignment: 8
|
alignment: 8
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
linker_set_key: "float *"
|
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 {
|
builtin_types {
|
||||||
@@ -243,9 +269,10 @@ builtin_types {
|
|||||||
name: "float"
|
name: "float"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "float"
|
linker_set_key: "float"
|
||||||
|
self_type: "type-3"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: false
|
is_integral: false
|
||||||
@@ -255,9 +282,10 @@ builtin_types {
|
|||||||
name: "int"
|
name: "int"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "int"
|
referenced_type: "type-2"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "int"
|
linker_set_key: "int"
|
||||||
|
self_type: "type-2"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: true
|
is_integral: true
|
||||||
@@ -267,9 +295,10 @@ builtin_types {
|
|||||||
name: "unsigned int"
|
name: "unsigned int"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "unsigned int"
|
referenced_type: "type-6"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "unsigned int"
|
linker_set_key: "unsigned int"
|
||||||
|
self_type: "type-6"
|
||||||
}
|
}
|
||||||
is_unsigned: true
|
is_unsigned: true
|
||||||
is_integral: true
|
is_integral: true
|
||||||
@@ -279,127 +308,188 @@ builtin_types {
|
|||||||
name: "void"
|
name: "void"
|
||||||
size: 0
|
size: 0
|
||||||
alignment: 0
|
alignment: 0
|
||||||
referenced_type: "void"
|
referenced_type: "type-10"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "void"
|
linker_set_key: "void"
|
||||||
|
self_type: "type-10"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: false
|
is_integral: false
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "SuperSpeaker *"
|
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"
|
function_name: "SuperSpeaker::CreateSuperSpeaker"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "int"
|
referenced_type: "type-2"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "SuperSpeaker::Volume"
|
return_type: "type-8"
|
||||||
function_name: "SuperSpeaker::SpeakLoud"
|
function_name: "SuperSpeaker::SpeakLoud"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "SuperSpeaker *"
|
referenced_type: "type-9"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
|
function_name: "SuperSpeaker::~SuperSpeaker"
|
||||||
|
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: "_ZN12SuperSpeakerD2Ev"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
function_name: "LowVolumeSpeaker::Speak"
|
function_name: "LowVolumeSpeaker::Speak"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "LowVolumeSpeaker *"
|
referenced_type: "type-4"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "LowVolumeSpeaker::Listen"
|
function_name: "LowVolumeSpeaker::Listen"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "LowVolumeSpeaker *"
|
referenced_type: "type-4"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "HighVolumeSpeaker *"
|
return_type: "type-12"
|
||||||
function_name: "HighVolumeSpeaker::BadPractice"
|
function_name: "HighVolumeSpeaker::BadPractice"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "HighVolumeSpeaker::Speak"
|
function_name: "HighVolumeSpeaker::Speak"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "HighVolumeSpeaker::Listen"
|
function_name: "HighVolumeSpeaker::Listen"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12NotReferenced"
|
name: "_ZN12NotReferenced"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeakerD2Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker13AddedFunctionEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_objects {
|
elf_objects {
|
||||||
name: "_ZTV16LowVolumeSpeaker"
|
name: "_ZTV16LowVolumeSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_objects {
|
elf_objects {
|
||||||
name: "_ZTV17HighVolumeSpeaker"
|
name: "_ZTV17HighVolumeSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
@@ -1,14 +1,75 @@
|
|||||||
|
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
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI12SuperSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: true
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: true
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS12SuperSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
record_types {
|
record_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "HighVolumeSpeaker"
|
name: "HighVolumeSpeaker"
|
||||||
size: 8
|
size: 8
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "HighVolumeSpeaker"
|
referenced_type: "type-11"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
linker_set_key: "HighVolumeSpeaker"
|
linker_set_key: "HighVolumeSpeaker"
|
||||||
|
self_type: "type-11"
|
||||||
}
|
}
|
||||||
base_specifiers {
|
base_specifiers {
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
is_virtual: false
|
is_virtual: false
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
@@ -17,31 +78,37 @@ record_types {
|
|||||||
kind: OffsetToTop
|
kind: OffsetToTop
|
||||||
mangled_component_name: ""
|
mangled_component_name: ""
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: RTTI
|
kind: RTTI
|
||||||
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: CompleteDtorPointer
|
kind: CompleteDtorPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: DeletingDtorPointer
|
kind: DeletingDtorPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
access: public_access
|
access: public_access
|
||||||
@@ -55,24 +122,25 @@ record_types {
|
|||||||
name: "LowVolumeSpeaker"
|
name: "LowVolumeSpeaker"
|
||||||
size: 16
|
size: 16
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "LowVolumeSpeaker"
|
referenced_type: "type-5"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
linker_set_key: "LowVolumeSpeaker"
|
linker_set_key: "LowVolumeSpeaker"
|
||||||
|
self_type: "type-5"
|
||||||
}
|
}
|
||||||
fields {
|
fields {
|
||||||
referenced_type: "unsigned int"
|
referenced_type: "type-6"
|
||||||
field_offset: 64
|
field_offset: 64
|
||||||
field_name: "speaker_uint_t"
|
field_name: "speaker_uint_t"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
fields {
|
fields {
|
||||||
referenced_type: "float *"
|
referenced_type: "type-7"
|
||||||
field_offset: 96
|
field_offset: 96
|
||||||
field_name: "speaker_float_star"
|
field_name: "speaker_float_star"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
base_specifiers {
|
base_specifiers {
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
is_virtual: false
|
is_virtual: false
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
@@ -81,31 +149,37 @@ record_types {
|
|||||||
kind: OffsetToTop
|
kind: OffsetToTop
|
||||||
mangled_component_name: ""
|
mangled_component_name: ""
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: RTTI
|
kind: RTTI
|
||||||
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: CompleteDtorPointer
|
kind: CompleteDtorPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: DeletingDtorPointer
|
kind: DeletingDtorPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
access: public_access
|
access: public_access
|
||||||
@@ -114,118 +188,58 @@ record_types {
|
|||||||
unique_id: "_ZTS16LowVolumeSpeaker"
|
unique_id: "_ZTS16LowVolumeSpeaker"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
record_types {
|
|
||||||
type_info {
|
|
||||||
name: "SuperSpeaker"
|
|
||||||
size: 8
|
|
||||||
alignment: 4
|
|
||||||
referenced_type: "SuperSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
|
||||||
linker_set_key: "SuperSpeaker"
|
|
||||||
}
|
|
||||||
fields {
|
|
||||||
referenced_type: "int"
|
|
||||||
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"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
enum_types {
|
enum_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "SuperSpeaker::Volume"
|
name: "SuperSpeaker::Volume"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "SuperSpeaker::Volume"
|
referenced_type: "type-8"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
linker_set_key: "SuperSpeaker::Volume"
|
linker_set_key: "SuperSpeaker::Volume"
|
||||||
|
self_type: "type-8"
|
||||||
}
|
}
|
||||||
underlying_type: "unsigned int"
|
underlying_type: "type-6"
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 1
|
enum_field_value: 1
|
||||||
name: "SuperSpeaker::Volume::Loud"
|
name: "SuperSpeaker::Loud"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 2
|
enum_field_value: 2
|
||||||
name: "SuperSpeaker::Volume::Louder"
|
name: "SuperSpeaker::Louder"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 3
|
enum_field_value: 3
|
||||||
name: "SuperSpeaker::Volume::Loudest"
|
name: "SuperSpeaker::Loudest"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 4
|
enum_field_value: 0
|
||||||
name: "SuperSpeaker::Volume::Lower"
|
name: "SuperSpeaker::Lower"
|
||||||
}
|
}
|
||||||
access: private_access
|
access: private_access
|
||||||
tag_info {
|
tag_info {
|
||||||
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
pointer_types {
|
|
||||||
type_info {
|
|
||||||
name: "HighVolumeSpeaker *"
|
|
||||||
size: 4
|
|
||||||
alignment: 4
|
|
||||||
referenced_type: "HighVolumeSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
|
||||||
linker_set_key: "HighVolumeSpeaker *"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
pointer_types {
|
|
||||||
type_info {
|
|
||||||
name: "LowVolumeSpeaker *"
|
|
||||||
size: 4
|
|
||||||
alignment: 4
|
|
||||||
referenced_type: "LowVolumeSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
|
||||||
linker_set_key: "LowVolumeSpeaker *"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
pointer_types {
|
pointer_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "SuperSpeaker *"
|
name: "SuperSpeaker *"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
linker_set_key: "SuperSpeaker *"
|
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 {
|
pointer_types {
|
||||||
@@ -233,9 +247,21 @@ pointer_types {
|
|||||||
name: "float *"
|
name: "float *"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
linker_set_key: "float *"
|
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 {
|
builtin_types {
|
||||||
@@ -243,9 +269,10 @@ builtin_types {
|
|||||||
name: "float"
|
name: "float"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "float"
|
linker_set_key: "float"
|
||||||
|
self_type: "type-3"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: false
|
is_integral: false
|
||||||
@@ -255,9 +282,10 @@ builtin_types {
|
|||||||
name: "int"
|
name: "int"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "int"
|
referenced_type: "type-2"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "int"
|
linker_set_key: "int"
|
||||||
|
self_type: "type-2"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: true
|
is_integral: true
|
||||||
@@ -267,9 +295,10 @@ builtin_types {
|
|||||||
name: "unsigned int"
|
name: "unsigned int"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "unsigned int"
|
referenced_type: "type-6"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "unsigned int"
|
linker_set_key: "unsigned int"
|
||||||
|
self_type: "type-6"
|
||||||
}
|
}
|
||||||
is_unsigned: true
|
is_unsigned: true
|
||||||
is_integral: true
|
is_integral: true
|
||||||
@@ -279,127 +308,188 @@ builtin_types {
|
|||||||
name: "void"
|
name: "void"
|
||||||
size: 0
|
size: 0
|
||||||
alignment: 0
|
alignment: 0
|
||||||
referenced_type: "void"
|
referenced_type: "type-10"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "void"
|
linker_set_key: "void"
|
||||||
|
self_type: "type-10"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: false
|
is_integral: false
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "SuperSpeaker *"
|
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"
|
function_name: "SuperSpeaker::CreateSuperSpeaker"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "int"
|
referenced_type: "type-2"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "SuperSpeaker::Volume"
|
return_type: "type-8"
|
||||||
function_name: "SuperSpeaker::SpeakLoud"
|
function_name: "SuperSpeaker::SpeakLoud"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "SuperSpeaker *"
|
referenced_type: "type-9"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
|
function_name: "SuperSpeaker::~SuperSpeaker"
|
||||||
|
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: "_ZN12SuperSpeakerD2Ev"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
function_name: "LowVolumeSpeaker::Speak"
|
function_name: "LowVolumeSpeaker::Speak"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "LowVolumeSpeaker *"
|
referenced_type: "type-4"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "LowVolumeSpeaker::Listen"
|
function_name: "LowVolumeSpeaker::Listen"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "LowVolumeSpeaker *"
|
referenced_type: "type-4"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "HighVolumeSpeaker *"
|
return_type: "type-12"
|
||||||
function_name: "HighVolumeSpeaker::BadPractice"
|
function_name: "HighVolumeSpeaker::BadPractice"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "HighVolumeSpeaker::Speak"
|
function_name: "HighVolumeSpeaker::Speak"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "HighVolumeSpeaker::Listen"
|
function_name: "HighVolumeSpeaker::Listen"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12NotReferenced"
|
name: "_ZN12NotReferenced"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeakerD2Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker13AddedFunctionEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_objects {
|
elf_objects {
|
||||||
name: "_ZTV16LowVolumeSpeaker"
|
name: "_ZTV16LowVolumeSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_objects {
|
elf_objects {
|
||||||
name: "_ZTV17HighVolumeSpeaker"
|
name: "_ZTV17HighVolumeSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
@@ -1,14 +1,75 @@
|
|||||||
|
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
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI12SuperSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: true
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: true
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS12SuperSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
record_types {
|
record_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "HighVolumeSpeaker"
|
name: "HighVolumeSpeaker"
|
||||||
size: 16
|
size: 16
|
||||||
alignment: 8
|
alignment: 8
|
||||||
referenced_type: "HighVolumeSpeaker"
|
referenced_type: "type-11"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
linker_set_key: "HighVolumeSpeaker"
|
linker_set_key: "HighVolumeSpeaker"
|
||||||
|
self_type: "type-11"
|
||||||
}
|
}
|
||||||
base_specifiers {
|
base_specifiers {
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
is_virtual: false
|
is_virtual: false
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
@@ -17,31 +78,37 @@ record_types {
|
|||||||
kind: OffsetToTop
|
kind: OffsetToTop
|
||||||
mangled_component_name: ""
|
mangled_component_name: ""
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: RTTI
|
kind: RTTI
|
||||||
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: CompleteDtorPointer
|
kind: CompleteDtorPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: DeletingDtorPointer
|
kind: DeletingDtorPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
access: public_access
|
access: public_access
|
||||||
@@ -55,24 +122,25 @@ record_types {
|
|||||||
name: "LowVolumeSpeaker"
|
name: "LowVolumeSpeaker"
|
||||||
size: 24
|
size: 24
|
||||||
alignment: 8
|
alignment: 8
|
||||||
referenced_type: "LowVolumeSpeaker"
|
referenced_type: "type-5"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
linker_set_key: "LowVolumeSpeaker"
|
linker_set_key: "LowVolumeSpeaker"
|
||||||
|
self_type: "type-5"
|
||||||
}
|
}
|
||||||
fields {
|
fields {
|
||||||
referenced_type: "unsigned int"
|
referenced_type: "type-6"
|
||||||
field_offset: 96
|
field_offset: 96
|
||||||
field_name: "speaker_uint_t"
|
field_name: "speaker_uint_t"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
fields {
|
fields {
|
||||||
referenced_type: "float *"
|
referenced_type: "type-7"
|
||||||
field_offset: 128
|
field_offset: 128
|
||||||
field_name: "speaker_float_star"
|
field_name: "speaker_float_star"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
base_specifiers {
|
base_specifiers {
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
is_virtual: false
|
is_virtual: false
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
@@ -81,31 +149,37 @@ record_types {
|
|||||||
kind: OffsetToTop
|
kind: OffsetToTop
|
||||||
mangled_component_name: ""
|
mangled_component_name: ""
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: RTTI
|
kind: RTTI
|
||||||
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: CompleteDtorPointer
|
kind: CompleteDtorPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: DeletingDtorPointer
|
kind: DeletingDtorPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
access: public_access
|
access: public_access
|
||||||
@@ -114,118 +188,58 @@ record_types {
|
|||||||
unique_id: "_ZTS16LowVolumeSpeaker"
|
unique_id: "_ZTS16LowVolumeSpeaker"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
record_types {
|
|
||||||
type_info {
|
|
||||||
name: "SuperSpeaker"
|
|
||||||
size: 16
|
|
||||||
alignment: 8
|
|
||||||
referenced_type: "SuperSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
|
||||||
linker_set_key: "SuperSpeaker"
|
|
||||||
}
|
|
||||||
fields {
|
|
||||||
referenced_type: "int"
|
|
||||||
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"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
enum_types {
|
enum_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "SuperSpeaker::Volume"
|
name: "SuperSpeaker::Volume"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "SuperSpeaker::Volume"
|
referenced_type: "type-8"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
linker_set_key: "SuperSpeaker::Volume"
|
linker_set_key: "SuperSpeaker::Volume"
|
||||||
|
self_type: "type-8"
|
||||||
}
|
}
|
||||||
underlying_type: "unsigned int"
|
underlying_type: "type-6"
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 1
|
enum_field_value: 1
|
||||||
name: "SuperSpeaker::Volume::Loud"
|
name: "SuperSpeaker::Loud"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 2
|
enum_field_value: 2
|
||||||
name: "SuperSpeaker::Volume::Louder"
|
name: "SuperSpeaker::Louder"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 3
|
enum_field_value: 3
|
||||||
name: "SuperSpeaker::Volume::Loudest"
|
name: "SuperSpeaker::Loudest"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 4
|
enum_field_value: 0
|
||||||
name: "SuperSpeaker::Volume::Lower"
|
name: "SuperSpeaker::Lower"
|
||||||
}
|
}
|
||||||
access: private_access
|
access: private_access
|
||||||
tag_info {
|
tag_info {
|
||||||
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
pointer_types {
|
|
||||||
type_info {
|
|
||||||
name: "HighVolumeSpeaker *"
|
|
||||||
size: 8
|
|
||||||
alignment: 8
|
|
||||||
referenced_type: "HighVolumeSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
|
||||||
linker_set_key: "HighVolumeSpeaker *"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
pointer_types {
|
|
||||||
type_info {
|
|
||||||
name: "LowVolumeSpeaker *"
|
|
||||||
size: 8
|
|
||||||
alignment: 8
|
|
||||||
referenced_type: "LowVolumeSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
|
||||||
linker_set_key: "LowVolumeSpeaker *"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
pointer_types {
|
pointer_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "SuperSpeaker *"
|
name: "SuperSpeaker *"
|
||||||
size: 8
|
size: 8
|
||||||
alignment: 8
|
alignment: 8
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
linker_set_key: "SuperSpeaker *"
|
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 {
|
pointer_types {
|
||||||
@@ -233,9 +247,21 @@ pointer_types {
|
|||||||
name: "float *"
|
name: "float *"
|
||||||
size: 8
|
size: 8
|
||||||
alignment: 8
|
alignment: 8
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
linker_set_key: "float *"
|
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 {
|
builtin_types {
|
||||||
@@ -243,9 +269,10 @@ builtin_types {
|
|||||||
name: "float"
|
name: "float"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "float"
|
linker_set_key: "float"
|
||||||
|
self_type: "type-3"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: false
|
is_integral: false
|
||||||
@@ -255,9 +282,10 @@ builtin_types {
|
|||||||
name: "int"
|
name: "int"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "int"
|
referenced_type: "type-2"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "int"
|
linker_set_key: "int"
|
||||||
|
self_type: "type-2"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: true
|
is_integral: true
|
||||||
@@ -267,9 +295,10 @@ builtin_types {
|
|||||||
name: "unsigned int"
|
name: "unsigned int"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "unsigned int"
|
referenced_type: "type-6"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "unsigned int"
|
linker_set_key: "unsigned int"
|
||||||
|
self_type: "type-6"
|
||||||
}
|
}
|
||||||
is_unsigned: true
|
is_unsigned: true
|
||||||
is_integral: true
|
is_integral: true
|
||||||
@@ -279,127 +308,188 @@ builtin_types {
|
|||||||
name: "void"
|
name: "void"
|
||||||
size: 0
|
size: 0
|
||||||
alignment: 0
|
alignment: 0
|
||||||
referenced_type: "void"
|
referenced_type: "type-10"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "void"
|
linker_set_key: "void"
|
||||||
|
self_type: "type-10"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: false
|
is_integral: false
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "SuperSpeaker *"
|
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"
|
function_name: "SuperSpeaker::CreateSuperSpeaker"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "int"
|
referenced_type: "type-2"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "SuperSpeaker::Volume"
|
return_type: "type-8"
|
||||||
function_name: "SuperSpeaker::SpeakLoud"
|
function_name: "SuperSpeaker::SpeakLoud"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "SuperSpeaker *"
|
referenced_type: "type-9"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
|
function_name: "SuperSpeaker::~SuperSpeaker"
|
||||||
|
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: "_ZN12SuperSpeakerD2Ev"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
function_name: "LowVolumeSpeaker::Speak"
|
function_name: "LowVolumeSpeaker::Speak"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "LowVolumeSpeaker *"
|
referenced_type: "type-4"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "LowVolumeSpeaker::Listen"
|
function_name: "LowVolumeSpeaker::Listen"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "LowVolumeSpeaker *"
|
referenced_type: "type-4"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "HighVolumeSpeaker *"
|
return_type: "type-12"
|
||||||
function_name: "HighVolumeSpeaker::BadPractice"
|
function_name: "HighVolumeSpeaker::BadPractice"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "HighVolumeSpeaker::Speak"
|
function_name: "HighVolumeSpeaker::Speak"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "HighVolumeSpeaker::Listen"
|
function_name: "HighVolumeSpeaker::Listen"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12NotReferenced"
|
name: "_ZN12NotReferenced"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeakerD2Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker13AddedFunctionEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_objects {
|
elf_objects {
|
||||||
name: "_ZTV16LowVolumeSpeaker"
|
name: "_ZTV16LowVolumeSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_objects {
|
elf_objects {
|
||||||
name: "_ZTV17HighVolumeSpeaker"
|
name: "_ZTV17HighVolumeSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
@@ -1,14 +1,75 @@
|
|||||||
|
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
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI12SuperSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: true
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: true
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS12SuperSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
record_types {
|
record_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "HighVolumeSpeaker"
|
name: "HighVolumeSpeaker"
|
||||||
size: 8
|
size: 8
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "HighVolumeSpeaker"
|
referenced_type: "type-11"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
linker_set_key: "HighVolumeSpeaker"
|
linker_set_key: "HighVolumeSpeaker"
|
||||||
|
self_type: "type-11"
|
||||||
}
|
}
|
||||||
base_specifiers {
|
base_specifiers {
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
is_virtual: false
|
is_virtual: false
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
@@ -17,31 +78,37 @@ record_types {
|
|||||||
kind: OffsetToTop
|
kind: OffsetToTop
|
||||||
mangled_component_name: ""
|
mangled_component_name: ""
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: RTTI
|
kind: RTTI
|
||||||
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: CompleteDtorPointer
|
kind: CompleteDtorPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: DeletingDtorPointer
|
kind: DeletingDtorPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
access: public_access
|
access: public_access
|
||||||
@@ -55,24 +122,25 @@ record_types {
|
|||||||
name: "LowVolumeSpeaker"
|
name: "LowVolumeSpeaker"
|
||||||
size: 16
|
size: 16
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "LowVolumeSpeaker"
|
referenced_type: "type-5"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
linker_set_key: "LowVolumeSpeaker"
|
linker_set_key: "LowVolumeSpeaker"
|
||||||
|
self_type: "type-5"
|
||||||
}
|
}
|
||||||
fields {
|
fields {
|
||||||
referenced_type: "unsigned int"
|
referenced_type: "type-6"
|
||||||
field_offset: 64
|
field_offset: 64
|
||||||
field_name: "speaker_uint_t"
|
field_name: "speaker_uint_t"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
fields {
|
fields {
|
||||||
referenced_type: "float *"
|
referenced_type: "type-7"
|
||||||
field_offset: 96
|
field_offset: 96
|
||||||
field_name: "speaker_float_star"
|
field_name: "speaker_float_star"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
base_specifiers {
|
base_specifiers {
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
is_virtual: false
|
is_virtual: false
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
@@ -81,31 +149,37 @@ record_types {
|
|||||||
kind: OffsetToTop
|
kind: OffsetToTop
|
||||||
mangled_component_name: ""
|
mangled_component_name: ""
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: RTTI
|
kind: RTTI
|
||||||
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: CompleteDtorPointer
|
kind: CompleteDtorPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: DeletingDtorPointer
|
kind: DeletingDtorPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
access: public_access
|
access: public_access
|
||||||
@@ -114,118 +188,58 @@ record_types {
|
|||||||
unique_id: "_ZTS16LowVolumeSpeaker"
|
unique_id: "_ZTS16LowVolumeSpeaker"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
record_types {
|
|
||||||
type_info {
|
|
||||||
name: "SuperSpeaker"
|
|
||||||
size: 8
|
|
||||||
alignment: 4
|
|
||||||
referenced_type: "SuperSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
|
||||||
linker_set_key: "SuperSpeaker"
|
|
||||||
}
|
|
||||||
fields {
|
|
||||||
referenced_type: "int"
|
|
||||||
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"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
enum_types {
|
enum_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "SuperSpeaker::Volume"
|
name: "SuperSpeaker::Volume"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "SuperSpeaker::Volume"
|
referenced_type: "type-8"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
linker_set_key: "SuperSpeaker::Volume"
|
linker_set_key: "SuperSpeaker::Volume"
|
||||||
|
self_type: "type-8"
|
||||||
}
|
}
|
||||||
underlying_type: "unsigned int"
|
underlying_type: "type-6"
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 1
|
enum_field_value: 1
|
||||||
name: "SuperSpeaker::Volume::Loud"
|
name: "SuperSpeaker::Loud"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 2
|
enum_field_value: 2
|
||||||
name: "SuperSpeaker::Volume::Louder"
|
name: "SuperSpeaker::Louder"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 3
|
enum_field_value: 3
|
||||||
name: "SuperSpeaker::Volume::Loudest"
|
name: "SuperSpeaker::Loudest"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 4
|
enum_field_value: 0
|
||||||
name: "SuperSpeaker::Volume::Lower"
|
name: "SuperSpeaker::Lower"
|
||||||
}
|
}
|
||||||
access: private_access
|
access: private_access
|
||||||
tag_info {
|
tag_info {
|
||||||
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
pointer_types {
|
|
||||||
type_info {
|
|
||||||
name: "HighVolumeSpeaker *"
|
|
||||||
size: 4
|
|
||||||
alignment: 4
|
|
||||||
referenced_type: "HighVolumeSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
|
||||||
linker_set_key: "HighVolumeSpeaker *"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
pointer_types {
|
|
||||||
type_info {
|
|
||||||
name: "LowVolumeSpeaker *"
|
|
||||||
size: 4
|
|
||||||
alignment: 4
|
|
||||||
referenced_type: "LowVolumeSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
|
||||||
linker_set_key: "LowVolumeSpeaker *"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
pointer_types {
|
pointer_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "SuperSpeaker *"
|
name: "SuperSpeaker *"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
linker_set_key: "SuperSpeaker *"
|
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 {
|
pointer_types {
|
||||||
@@ -233,9 +247,21 @@ pointer_types {
|
|||||||
name: "float *"
|
name: "float *"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
linker_set_key: "float *"
|
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 {
|
builtin_types {
|
||||||
@@ -243,9 +269,10 @@ builtin_types {
|
|||||||
name: "float"
|
name: "float"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "float"
|
linker_set_key: "float"
|
||||||
|
self_type: "type-3"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: false
|
is_integral: false
|
||||||
@@ -255,9 +282,10 @@ builtin_types {
|
|||||||
name: "int"
|
name: "int"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "int"
|
referenced_type: "type-2"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "int"
|
linker_set_key: "int"
|
||||||
|
self_type: "type-2"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: true
|
is_integral: true
|
||||||
@@ -267,9 +295,10 @@ builtin_types {
|
|||||||
name: "unsigned int"
|
name: "unsigned int"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "unsigned int"
|
referenced_type: "type-6"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "unsigned int"
|
linker_set_key: "unsigned int"
|
||||||
|
self_type: "type-6"
|
||||||
}
|
}
|
||||||
is_unsigned: true
|
is_unsigned: true
|
||||||
is_integral: true
|
is_integral: true
|
||||||
@@ -279,127 +308,188 @@ builtin_types {
|
|||||||
name: "void"
|
name: "void"
|
||||||
size: 0
|
size: 0
|
||||||
alignment: 0
|
alignment: 0
|
||||||
referenced_type: "void"
|
referenced_type: "type-10"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "void"
|
linker_set_key: "void"
|
||||||
|
self_type: "type-10"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: false
|
is_integral: false
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "SuperSpeaker *"
|
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"
|
function_name: "SuperSpeaker::CreateSuperSpeaker"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "int"
|
referenced_type: "type-2"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "SuperSpeaker::Volume"
|
return_type: "type-8"
|
||||||
function_name: "SuperSpeaker::SpeakLoud"
|
function_name: "SuperSpeaker::SpeakLoud"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "SuperSpeaker *"
|
referenced_type: "type-9"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
|
function_name: "SuperSpeaker::~SuperSpeaker"
|
||||||
|
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: "_ZN12SuperSpeakerD2Ev"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
function_name: "LowVolumeSpeaker::Speak"
|
function_name: "LowVolumeSpeaker::Speak"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "LowVolumeSpeaker *"
|
referenced_type: "type-4"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "LowVolumeSpeaker::Listen"
|
function_name: "LowVolumeSpeaker::Listen"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "LowVolumeSpeaker *"
|
referenced_type: "type-4"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "HighVolumeSpeaker *"
|
return_type: "type-12"
|
||||||
function_name: "HighVolumeSpeaker::BadPractice"
|
function_name: "HighVolumeSpeaker::BadPractice"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "HighVolumeSpeaker::Speak"
|
function_name: "HighVolumeSpeaker::Speak"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "HighVolumeSpeaker::Listen"
|
function_name: "HighVolumeSpeaker::Listen"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12NotReferenced"
|
name: "_ZN12NotReferenced"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeakerD2Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker13AddedFunctionEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_objects {
|
elf_objects {
|
||||||
name: "_ZTV16LowVolumeSpeaker"
|
name: "_ZTV16LowVolumeSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_objects {
|
elf_objects {
|
||||||
name: "_ZTV17HighVolumeSpeaker"
|
name: "_ZTV17HighVolumeSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
@@ -1,14 +1,75 @@
|
|||||||
|
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
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: RTTI
|
||||||
|
mangled_component_name: "_ZTI12SuperSpeaker"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker5SpeakEv"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: true
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: FunctionPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeaker6ListenEv"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: true
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: CompleteDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD1Ev"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
vtable_components {
|
||||||
|
kind: DeletingDtorPointer
|
||||||
|
mangled_component_name: "_ZN12SuperSpeakerD0Ev"
|
||||||
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
access: public_access
|
||||||
|
record_kind: class_kind
|
||||||
|
tag_info {
|
||||||
|
unique_id: "_ZTS12SuperSpeaker"
|
||||||
|
}
|
||||||
|
}
|
||||||
record_types {
|
record_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "HighVolumeSpeaker"
|
name: "HighVolumeSpeaker"
|
||||||
size: 16
|
size: 16
|
||||||
alignment: 8
|
alignment: 8
|
||||||
referenced_type: "HighVolumeSpeaker"
|
referenced_type: "type-11"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
linker_set_key: "HighVolumeSpeaker"
|
linker_set_key: "HighVolumeSpeaker"
|
||||||
|
self_type: "type-11"
|
||||||
}
|
}
|
||||||
base_specifiers {
|
base_specifiers {
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
is_virtual: false
|
is_virtual: false
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
@@ -17,31 +78,37 @@ record_types {
|
|||||||
kind: OffsetToTop
|
kind: OffsetToTop
|
||||||
mangled_component_name: ""
|
mangled_component_name: ""
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: RTTI
|
kind: RTTI
|
||||||
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
mangled_component_name: "_ZTI17HighVolumeSpeaker"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
mangled_component_name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
mangled_component_name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: CompleteDtorPointer
|
kind: CompleteDtorPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
mangled_component_name: "_ZN17HighVolumeSpeakerD1Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: DeletingDtorPointer
|
kind: DeletingDtorPointer
|
||||||
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
mangled_component_name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
access: public_access
|
access: public_access
|
||||||
@@ -55,24 +122,25 @@ record_types {
|
|||||||
name: "LowVolumeSpeaker"
|
name: "LowVolumeSpeaker"
|
||||||
size: 24
|
size: 24
|
||||||
alignment: 8
|
alignment: 8
|
||||||
referenced_type: "LowVolumeSpeaker"
|
referenced_type: "type-5"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
linker_set_key: "LowVolumeSpeaker"
|
linker_set_key: "LowVolumeSpeaker"
|
||||||
|
self_type: "type-5"
|
||||||
}
|
}
|
||||||
fields {
|
fields {
|
||||||
referenced_type: "unsigned int"
|
referenced_type: "type-6"
|
||||||
field_offset: 96
|
field_offset: 96
|
||||||
field_name: "speaker_uint_t"
|
field_name: "speaker_uint_t"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
fields {
|
fields {
|
||||||
referenced_type: "float *"
|
referenced_type: "type-7"
|
||||||
field_offset: 128
|
field_offset: 128
|
||||||
field_name: "speaker_float_star"
|
field_name: "speaker_float_star"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
base_specifiers {
|
base_specifiers {
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
is_virtual: false
|
is_virtual: false
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
@@ -81,31 +149,37 @@ record_types {
|
|||||||
kind: OffsetToTop
|
kind: OffsetToTop
|
||||||
mangled_component_name: ""
|
mangled_component_name: ""
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: RTTI
|
kind: RTTI
|
||||||
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
mangled_component_name: "_ZTI16LowVolumeSpeaker"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
mangled_component_name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: FunctionPointer
|
kind: FunctionPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
mangled_component_name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: CompleteDtorPointer
|
kind: CompleteDtorPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
mangled_component_name: "_ZN16LowVolumeSpeakerD1Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
vtable_components {
|
vtable_components {
|
||||||
kind: DeletingDtorPointer
|
kind: DeletingDtorPointer
|
||||||
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
mangled_component_name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
component_value: 0
|
component_value: 0
|
||||||
|
is_pure: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
access: public_access
|
access: public_access
|
||||||
@@ -114,118 +188,58 @@ record_types {
|
|||||||
unique_id: "_ZTS16LowVolumeSpeaker"
|
unique_id: "_ZTS16LowVolumeSpeaker"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
record_types {
|
|
||||||
type_info {
|
|
||||||
name: "SuperSpeaker"
|
|
||||||
size: 16
|
|
||||||
alignment: 8
|
|
||||||
referenced_type: "SuperSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
|
||||||
linker_set_key: "SuperSpeaker"
|
|
||||||
}
|
|
||||||
fields {
|
|
||||||
referenced_type: "int"
|
|
||||||
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"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
enum_types {
|
enum_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "SuperSpeaker::Volume"
|
name: "SuperSpeaker::Volume"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "SuperSpeaker::Volume"
|
referenced_type: "type-8"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
linker_set_key: "SuperSpeaker::Volume"
|
linker_set_key: "SuperSpeaker::Volume"
|
||||||
|
self_type: "type-8"
|
||||||
}
|
}
|
||||||
underlying_type: "unsigned int"
|
underlying_type: "type-6"
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 1
|
enum_field_value: 1
|
||||||
name: "SuperSpeaker::Volume::Loud"
|
name: "SuperSpeaker::Loud"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 2
|
enum_field_value: 2
|
||||||
name: "SuperSpeaker::Volume::Louder"
|
name: "SuperSpeaker::Louder"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 3
|
enum_field_value: 3
|
||||||
name: "SuperSpeaker::Volume::Loudest"
|
name: "SuperSpeaker::Loudest"
|
||||||
}
|
}
|
||||||
enum_fields {
|
enum_fields {
|
||||||
enum_field_value: 4
|
enum_field_value: 0
|
||||||
name: "SuperSpeaker::Volume::Lower"
|
name: "SuperSpeaker::Lower"
|
||||||
}
|
}
|
||||||
access: private_access
|
access: private_access
|
||||||
tag_info {
|
tag_info {
|
||||||
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
unique_id: "_ZTSN12SuperSpeaker6VolumeE"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
pointer_types {
|
|
||||||
type_info {
|
|
||||||
name: "HighVolumeSpeaker *"
|
|
||||||
size: 8
|
|
||||||
alignment: 8
|
|
||||||
referenced_type: "HighVolumeSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
|
||||||
linker_set_key: "HighVolumeSpeaker *"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
pointer_types {
|
|
||||||
type_info {
|
|
||||||
name: "LowVolumeSpeaker *"
|
|
||||||
size: 8
|
|
||||||
alignment: 8
|
|
||||||
referenced_type: "LowVolumeSpeaker"
|
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
|
||||||
linker_set_key: "LowVolumeSpeaker *"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
pointer_types {
|
pointer_types {
|
||||||
type_info {
|
type_info {
|
||||||
name: "SuperSpeaker *"
|
name: "SuperSpeaker *"
|
||||||
size: 8
|
size: 8
|
||||||
alignment: 8
|
alignment: 8
|
||||||
referenced_type: "SuperSpeaker"
|
referenced_type: "type-1"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
linker_set_key: "SuperSpeaker *"
|
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 {
|
pointer_types {
|
||||||
@@ -233,9 +247,21 @@ pointer_types {
|
|||||||
name: "float *"
|
name: "float *"
|
||||||
size: 8
|
size: 8
|
||||||
alignment: 8
|
alignment: 8
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
linker_set_key: "float *"
|
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 {
|
builtin_types {
|
||||||
@@ -243,9 +269,10 @@ builtin_types {
|
|||||||
name: "float"
|
name: "float"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "float"
|
linker_set_key: "float"
|
||||||
|
self_type: "type-3"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: false
|
is_integral: false
|
||||||
@@ -255,9 +282,10 @@ builtin_types {
|
|||||||
name: "int"
|
name: "int"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "int"
|
referenced_type: "type-2"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "int"
|
linker_set_key: "int"
|
||||||
|
self_type: "type-2"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: true
|
is_integral: true
|
||||||
@@ -267,9 +295,10 @@ builtin_types {
|
|||||||
name: "unsigned int"
|
name: "unsigned int"
|
||||||
size: 4
|
size: 4
|
||||||
alignment: 4
|
alignment: 4
|
||||||
referenced_type: "unsigned int"
|
referenced_type: "type-6"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "unsigned int"
|
linker_set_key: "unsigned int"
|
||||||
|
self_type: "type-6"
|
||||||
}
|
}
|
||||||
is_unsigned: true
|
is_unsigned: true
|
||||||
is_integral: true
|
is_integral: true
|
||||||
@@ -279,127 +308,188 @@ builtin_types {
|
|||||||
name: "void"
|
name: "void"
|
||||||
size: 0
|
size: 0
|
||||||
alignment: 0
|
alignment: 0
|
||||||
referenced_type: "void"
|
referenced_type: "type-10"
|
||||||
source_file: ""
|
source_file: ""
|
||||||
linker_set_key: "void"
|
linker_set_key: "void"
|
||||||
|
self_type: "type-10"
|
||||||
}
|
}
|
||||||
is_unsigned: false
|
is_unsigned: false
|
||||||
is_integral: false
|
is_integral: false
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "SuperSpeaker *"
|
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"
|
function_name: "SuperSpeaker::CreateSuperSpeaker"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "int"
|
referenced_type: "type-2"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
linker_set_key: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "SuperSpeaker::Volume"
|
return_type: "type-8"
|
||||||
function_name: "SuperSpeaker::SpeakLoud"
|
function_name: "SuperSpeaker::SpeakLoud"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/abstract_class.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "SuperSpeaker *"
|
referenced_type: "type-9"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
linker_set_key: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
|
function_name: "SuperSpeaker::~SuperSpeaker"
|
||||||
|
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: "_ZN12SuperSpeakerD2Ev"
|
||||||
|
access: public_access
|
||||||
|
}
|
||||||
|
functions {
|
||||||
|
return_type: "type-10"
|
||||||
function_name: "LowVolumeSpeaker::Speak"
|
function_name: "LowVolumeSpeaker::Speak"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "LowVolumeSpeaker *"
|
referenced_type: "type-4"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
linker_set_key: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "LowVolumeSpeaker::Listen"
|
function_name: "LowVolumeSpeaker::Listen"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/low_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "LowVolumeSpeaker *"
|
referenced_type: "type-4"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
linker_set_key: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "HighVolumeSpeaker *"
|
return_type: "type-12"
|
||||||
function_name: "HighVolumeSpeaker::BadPractice"
|
function_name: "HighVolumeSpeaker::BadPractice"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "float"
|
referenced_type: "type-3"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: false
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
linker_set_key: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "HighVolumeSpeaker::Speak"
|
function_name: "HighVolumeSpeaker::Speak"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
linker_set_key: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
functions {
|
functions {
|
||||||
return_type: "void"
|
return_type: "type-10"
|
||||||
function_name: "HighVolumeSpeaker::Listen"
|
function_name: "HighVolumeSpeaker::Listen"
|
||||||
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
source_file: "/development/vndk/tools/header-checker/tests/integration/cpp/gold/include/high_volume_speaker.h"
|
||||||
parameters {
|
parameters {
|
||||||
referenced_type: "HighVolumeSpeaker *"
|
referenced_type: "type-12"
|
||||||
default_arg: false
|
default_arg: false
|
||||||
|
is_this_ptr: true
|
||||||
}
|
}
|
||||||
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
linker_set_key: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
access: public_access
|
access: public_access
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
name: "_Z26test_virtual_function_callP12SuperSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12NotReferenced"
|
name: "_ZN12NotReferenced"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
name: "_ZN12SuperSpeaker11SpeakLouderEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
name: "_ZN12SuperSpeaker18CreateSuperSpeakerEi"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
name: "_ZN12SuperSpeaker9SpeakLoudEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN12SuperSpeakerD2Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
name: "_ZN16LowVolumeSpeaker5SpeakEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
name: "_ZN16LowVolumeSpeaker6ListenEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN16LowVolumeSpeakerD0Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
name: "_ZN17HighVolumeSpeaker11BadPracticeEf"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeaker13AddedFunctionEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
name: "_ZN17HighVolumeSpeaker5SpeakEv"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_functions {
|
elf_functions {
|
||||||
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
name: "_ZN17HighVolumeSpeaker6ListenEv"
|
||||||
|
binding: Global
|
||||||
|
}
|
||||||
|
elf_functions {
|
||||||
|
name: "_ZN17HighVolumeSpeakerD0Ev"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_objects {
|
elf_objects {
|
||||||
name: "_ZTV16LowVolumeSpeaker"
|
name: "_ZTV16LowVolumeSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
elf_objects {
|
elf_objects {
|
||||||
name: "_ZTV17HighVolumeSpeaker"
|
name: "_ZTV17HighVolumeSpeaker"
|
||||||
|
binding: Global
|
||||||
}
|
}
|
||||||
@@ -9,11 +9,9 @@ import_path = os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))
|
|||||||
import_path = os.path.abspath(os.path.join(import_path, 'utils'))
|
import_path = os.path.abspath(os.path.join(import_path, 'utils'))
|
||||||
sys.path.insert(1, import_path)
|
sys.path.insert(1, import_path)
|
||||||
|
|
||||||
from utils import (
|
from utils import (AOSP_DIR, read_output_content, run_abi_diff,
|
||||||
AOSP_DIR, SOURCE_ABI_DUMP_EXT, TARGET_ARCHS, read_output_content,
|
run_header_abi_dumper)
|
||||||
run_abi_diff, run_header_abi_dumper)
|
|
||||||
from module import Module
|
from module import Module
|
||||||
from gen_all import make_and_copy_reference_dumps
|
|
||||||
|
|
||||||
|
|
||||||
SCRIPT_DIR = os.path.abspath(os.path.dirname(__file__))
|
SCRIPT_DIR = os.path.abspath(os.path.dirname(__file__))
|
||||||
@@ -22,11 +20,37 @@ EXPECTED_DIR = os.path.join(SCRIPT_DIR, 'expected')
|
|||||||
REF_DUMP_DIR = os.path.join(SCRIPT_DIR, 'reference_dumps')
|
REF_DUMP_DIR = os.path.join(SCRIPT_DIR, 'reference_dumps')
|
||||||
|
|
||||||
|
|
||||||
class MyTest(unittest.TestCase):
|
def make_and_copy_reference_dumps(module, reference_dump_dir=REF_DUMP_DIR):
|
||||||
|
output_content = module.make_dump()
|
||||||
|
|
||||||
|
dump_dir = os.path.join(reference_dump_dir, module.arch)
|
||||||
|
os.makedirs(dump_dir, exist_ok=True)
|
||||||
|
|
||||||
|
dump_path = os.path.join(dump_dir, module.get_dump_name())
|
||||||
|
with open(dump_path, 'w') as f:
|
||||||
|
f.write(output_content)
|
||||||
|
|
||||||
|
return dump_path
|
||||||
|
|
||||||
|
|
||||||
|
class HeaderCheckerTest(unittest.TestCase):
|
||||||
@classmethod
|
@classmethod
|
||||||
def setUpClass(cls):
|
def setUpClass(cls):
|
||||||
cls.maxDiff = None
|
cls.maxDiff = None
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
self.tmp_dir = None
|
||||||
|
|
||||||
|
def tearDown(self):
|
||||||
|
if self.tmp_dir:
|
||||||
|
self.tmp_dir.cleanup()
|
||||||
|
self.tmp_dir = None
|
||||||
|
|
||||||
|
def get_tmp_dir(self):
|
||||||
|
if not self.tmp_dir:
|
||||||
|
self.tmp_dir = tempfile.TemporaryDirectory()
|
||||||
|
return self.tmp_dir.name
|
||||||
|
|
||||||
def run_and_compare(self, input_path, expected_path, cflags=[]):
|
def run_and_compare(self, input_path, expected_path, cflags=[]):
|
||||||
with open(expected_path, 'r') as f:
|
with open(expected_path, 'r') as f:
|
||||||
expected_output = f.read()
|
expected_output = f.read()
|
||||||
@@ -53,41 +77,40 @@ class MyTest(unittest.TestCase):
|
|||||||
def prepare_and_run_abi_diff(self, old_ref_dump_path, new_ref_dump_path,
|
def prepare_and_run_abi_diff(self, old_ref_dump_path, new_ref_dump_path,
|
||||||
target_arch, expected_return_code, flags=[]):
|
target_arch, expected_return_code, flags=[]):
|
||||||
self.run_and_compare_abi_diff(old_ref_dump_path, new_ref_dump_path,
|
self.run_and_compare_abi_diff(old_ref_dump_path, new_ref_dump_path,
|
||||||
'test', target_arch, expected_return_code,
|
'test', target_arch,
|
||||||
flags)
|
expected_return_code, flags)
|
||||||
|
|
||||||
def create_ref_dump(self, module_bare, dir_name, target_arch):
|
def get_or_create_ref_dump(self, module, create):
|
||||||
module = module_bare.mutate_for_arch(target_arch)
|
if create:
|
||||||
return make_and_copy_reference_dumps(module, [], dir_name)
|
return make_and_copy_reference_dumps(module, self.get_tmp_dir())
|
||||||
|
return os.path.join(REF_DUMP_DIR, module.arch, module.get_dump_name())
|
||||||
def get_or_create_ref_dump(self, name, target_arch, dir_name, create):
|
|
||||||
module = Module.get_test_module_by_name(name)
|
|
||||||
if create == True:
|
|
||||||
return self.create_ref_dump(module, dir_name, target_arch)
|
|
||||||
return os.path.join(REF_DUMP_DIR, target_arch,
|
|
||||||
module.get_dump_name() if module else name)
|
|
||||||
|
|
||||||
def prepare_and_run_abi_diff_all_archs(self, old_lib, new_lib,
|
def prepare_and_run_abi_diff_all_archs(self, old_lib, new_lib,
|
||||||
expected_return_code, flags=[],
|
expected_return_code, flags=[],
|
||||||
create_old=False, create_new=True):
|
create_old=False, create_new=True):
|
||||||
with tempfile.TemporaryDirectory() as tmp:
|
old_modules = Module.get_test_modules_by_name(old_lib)
|
||||||
for target_arch in TARGET_ARCHS:
|
new_modules = Module.get_test_modules_by_name(new_lib)
|
||||||
old_ref_dump_path = self.get_or_create_ref_dump(
|
self.assertEqual(len(old_modules), len(new_modules))
|
||||||
old_lib, target_arch, tmp, create_old)
|
|
||||||
new_ref_dump_path = self.get_or_create_ref_dump(
|
for old_module, new_module in zip(old_modules, new_modules):
|
||||||
new_lib, target_arch, tmp, create_new)
|
self.assertEqual(old_module.arch, new_module.arch)
|
||||||
|
old_ref_dump_path = self.get_or_create_ref_dump(old_module,
|
||||||
|
create_old)
|
||||||
|
new_ref_dump_path = self.get_or_create_ref_dump(new_module,
|
||||||
|
create_new)
|
||||||
self.prepare_and_run_abi_diff(
|
self.prepare_and_run_abi_diff(
|
||||||
old_ref_dump_path, new_ref_dump_path, target_arch,
|
old_ref_dump_path, new_ref_dump_path, new_module.arch,
|
||||||
expected_return_code, flags)
|
expected_return_code, flags)
|
||||||
|
|
||||||
def prepare_and_absolute_diff_all_archs(self, old_lib, new_lib,
|
def prepare_and_absolute_diff_all_archs(self, old_lib, new_lib):
|
||||||
flags=[], create=True):
|
old_modules = Module.get_test_modules_by_name(old_lib)
|
||||||
with tempfile.TemporaryDirectory() as tmp:
|
new_modules = Module.get_test_modules_by_name(new_lib)
|
||||||
for target_arch in TARGET_ARCHS:
|
self.assertEqual(len(old_modules), len(new_modules))
|
||||||
old_ref_dump_path = self.get_or_create_ref_dump(
|
|
||||||
old_lib, target_arch, tmp, False)
|
for old_module, new_module in zip(old_modules, new_modules):
|
||||||
new_ref_dump_path = self.get_or_create_ref_dump(
|
self.assertEqual(old_module.arch, new_module.arch)
|
||||||
new_lib, target_arch, tmp, create)
|
old_ref_dump_path = self.get_or_create_ref_dump(old_module, False)
|
||||||
|
new_ref_dump_path = self.get_or_create_ref_dump(new_module, True)
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
read_output_content(old_ref_dump_path, AOSP_DIR),
|
read_output_content(old_ref_dump_path, AOSP_DIR),
|
||||||
read_output_content(new_ref_dump_path, AOSP_DIR))
|
read_output_content(new_ref_dump_path, AOSP_DIR))
|
||||||
@@ -169,7 +192,13 @@ class MyTest(unittest.TestCase):
|
|||||||
|
|
||||||
def test_libgolden_cpp_add_function_and_elf_symbol(self):
|
def test_libgolden_cpp_add_function_and_elf_symbol(self):
|
||||||
self.prepare_and_run_abi_diff_all_archs(
|
self.prepare_and_run_abi_diff_all_archs(
|
||||||
"libgolden_cpp", "libgolden_cpp_add_function_and_unexported_elf", 4)
|
"libgolden_cpp", "libgolden_cpp_add_function_and_unexported_elf",
|
||||||
|
4)
|
||||||
|
|
||||||
|
def test_libgolden_cpp_fabricated_function_ast_removed_diff(self):
|
||||||
|
self.prepare_and_run_abi_diff_all_archs(
|
||||||
|
"libgolden_cpp_add_function_sybmol_only",
|
||||||
|
"libgolden_cpp_add_function", 0, [], False, False)
|
||||||
|
|
||||||
def test_libgolden_cpp_change_function_access(self):
|
def test_libgolden_cpp_change_function_access(self):
|
||||||
self.prepare_and_run_abi_diff_all_archs(
|
self.prepare_and_run_abi_diff_all_archs(
|
||||||
@@ -212,11 +241,6 @@ class MyTest(unittest.TestCase):
|
|||||||
self.prepare_and_run_abi_diff_all_archs(
|
self.prepare_and_run_abi_diff_all_archs(
|
||||||
"libgolden_cpp", "libgolden_cpp_enum_diff", 8)
|
"libgolden_cpp", "libgolden_cpp_enum_diff", 8)
|
||||||
|
|
||||||
def test_libgolden_cpp_fabricated_function_ast_removed_diff(self):
|
|
||||||
self.prepare_and_run_abi_diff_all_archs(
|
|
||||||
"libgolden_cpp_fabricated_function_ast_removed.so.lsdump",
|
|
||||||
"libgolden_cpp", 0, [], False)
|
|
||||||
|
|
||||||
def test_libgolden_cpp_member_fake_diff(self):
|
def test_libgolden_cpp_member_fake_diff(self):
|
||||||
self.prepare_and_run_abi_diff_all_archs(
|
self.prepare_and_run_abi_diff_all_archs(
|
||||||
"libgolden_cpp", "libgolden_cpp_member_fake_diff", 0)
|
"libgolden_cpp", "libgolden_cpp_member_fake_diff", 0)
|
||||||
@@ -245,7 +269,8 @@ class MyTest(unittest.TestCase):
|
|||||||
def test_libgolden_cpp_member_function_pointer_changed(self):
|
def test_libgolden_cpp_member_function_pointer_changed(self):
|
||||||
self.prepare_and_run_abi_diff_all_archs(
|
self.prepare_and_run_abi_diff_all_archs(
|
||||||
"libgolden_cpp_function_pointer",
|
"libgolden_cpp_function_pointer",
|
||||||
"libgolden_cpp_function_pointer_parameter_added", 8, [], True, True)
|
"libgolden_cpp_function_pointer_parameter_added", 8, [],
|
||||||
|
True, True)
|
||||||
|
|
||||||
def test_libgolden_cpp_internal_struct_access_upgraded(self):
|
def test_libgolden_cpp_internal_struct_access_upgraded(self):
|
||||||
self.prepare_and_run_abi_diff_all_archs(
|
self.prepare_and_run_abi_diff_all_archs(
|
||||||
|
|||||||
@@ -19,7 +19,8 @@ except KeyError:
|
|||||||
BUILTIN_HEADERS_DIR = (
|
BUILTIN_HEADERS_DIR = (
|
||||||
os.path.join(AOSP_DIR, 'bionic', 'libc', 'include'),
|
os.path.join(AOSP_DIR, 'bionic', 'libc', 'include'),
|
||||||
os.path.join(AOSP_DIR, 'external', 'libcxx', 'include'),
|
os.path.join(AOSP_DIR, 'external', 'libcxx', 'include'),
|
||||||
os.path.join(AOSP_DIR, 'prebuilts', 'clang-tools', 'linux-x86', 'clang-headers'),
|
os.path.join(AOSP_DIR, 'prebuilts', 'clang-tools', 'linux-x86',
|
||||||
|
'clang-headers'),
|
||||||
)
|
)
|
||||||
|
|
||||||
EXPORTED_HEADERS_DIR = (
|
EXPORTED_HEADERS_DIR = (
|
||||||
@@ -38,8 +39,6 @@ DEFAULT_CFLAGS = ['-std=gnu99']
|
|||||||
DEFAULT_HEADER_FLAGS = ["-dump-function-declarations"]
|
DEFAULT_HEADER_FLAGS = ["-dump-function-declarations"]
|
||||||
DEFAULT_FORMAT = 'ProtobufTextFormat'
|
DEFAULT_FORMAT = 'ProtobufTextFormat'
|
||||||
|
|
||||||
TARGET_ARCHS = ['arm', 'arm64', 'x86', 'x86_64', 'mips', 'mips64']
|
|
||||||
|
|
||||||
|
|
||||||
def get_reference_dump_dir(reference_dump_dir_stem,
|
def get_reference_dump_dir(reference_dump_dir_stem,
|
||||||
reference_dump_dir_insertion, lib_arch):
|
reference_dump_dir_insertion, lib_arch):
|
||||||
@@ -78,21 +77,6 @@ def copy_reference_dump(lib_path, reference_dump_dir, compress):
|
|||||||
return reference_dump_path
|
return reference_dump_path
|
||||||
|
|
||||||
|
|
||||||
def copy_reference_dump_content(file_name, output_content,
|
|
||||||
reference_dump_dir_stem,
|
|
||||||
reference_dump_dir_insertion, lib_arch):
|
|
||||||
reference_dump_dir = get_reference_dump_dir(reference_dump_dir_stem,
|
|
||||||
reference_dump_dir_insertion,
|
|
||||||
lib_arch)
|
|
||||||
reference_dump_path = os.path.join(reference_dump_dir, file_name)
|
|
||||||
os.makedirs(os.path.dirname(reference_dump_path), exist_ok=True)
|
|
||||||
with open(reference_dump_path, 'w') as f:
|
|
||||||
f.write(output_content)
|
|
||||||
|
|
||||||
print('Created abi dump at', reference_dump_path)
|
|
||||||
return reference_dump_path
|
|
||||||
|
|
||||||
|
|
||||||
def read_output_content(output_path, replace_str):
|
def read_output_content(output_path, replace_str):
|
||||||
with open(output_path, 'r') as f:
|
with open(output_path, 'r') as f:
|
||||||
return f.read().replace(replace_str, '')
|
return f.read().replace(replace_str, '')
|
||||||
@@ -115,7 +99,7 @@ def run_header_abi_dumper_on_file(input_path, output_path,
|
|||||||
export_include_dirs=tuple(), cflags=tuple(),
|
export_include_dirs=tuple(), cflags=tuple(),
|
||||||
flags=tuple()):
|
flags=tuple()):
|
||||||
input_ext = os.path.splitext(input_path)[1]
|
input_ext = os.path.splitext(input_path)[1]
|
||||||
cmd = ['header-abi-dumper', '-o', output_path, input_path,]
|
cmd = ['header-abi-dumper', '-o', output_path, input_path]
|
||||||
for dir in export_include_dirs:
|
for dir in export_include_dirs:
|
||||||
cmd += ['-I', dir]
|
cmd += ['-I', dir]
|
||||||
cmd += flags
|
cmd += flags
|
||||||
@@ -188,15 +172,15 @@ def find_lib_lsdumps(target_arch, target_arch_variant,
|
|||||||
cpu_variant = '_' + target_cpu_variant
|
cpu_variant = '_' + target_cpu_variant
|
||||||
arch_variant = '_' + target_arch_variant
|
arch_variant = '_' + target_arch_variant
|
||||||
arch_lsdump_paths = []
|
arch_lsdump_paths = []
|
||||||
if target_cpu_variant == 'generic' or target_cpu_variant is None or\
|
if (target_cpu_variant == 'generic' or target_cpu_variant is None or
|
||||||
target_cpu_variant == '':
|
target_cpu_variant == ''):
|
||||||
cpu_variant = ''
|
cpu_variant = ''
|
||||||
if target_arch_variant == target_arch or target_arch_variant is None or\
|
if (target_arch_variant == target_arch or target_arch_variant is None or
|
||||||
target_arch_variant == '':
|
target_arch_variant == ''):
|
||||||
arch_variant = ''
|
arch_variant = ''
|
||||||
|
|
||||||
target_dir = 'android_' + target_arch + arch_variant +\
|
target_dir = ('android_' + target_arch + arch_variant +
|
||||||
cpu_variant + core_or_vendor_shared_str
|
cpu_variant + core_or_vendor_shared_str)
|
||||||
for key in lsdump_paths:
|
for key in lsdump_paths:
|
||||||
if libs and key not in libs:
|
if libs and key not in libs:
|
||||||
continue
|
continue
|
||||||
@@ -245,7 +229,7 @@ def get_build_vars_for_product(names, product=None):
|
|||||||
out, err = proc.communicate()
|
out, err = proc.communicate()
|
||||||
|
|
||||||
if proc.returncode != 0:
|
if proc.returncode != 0:
|
||||||
print ("error: %s" % err.decode('utf-8'), file=sys.stderr)
|
print("error: %s" % err.decode('utf-8'), file=sys.stderr)
|
||||||
return None
|
return None
|
||||||
|
|
||||||
build_vars = out.decode('utf-8').strip().splitlines()
|
build_vars = out.decode('utf-8').strip().splitlines()
|
||||||
|
|||||||
Reference in New Issue
Block a user