object-introspection/test
Jake Hillion db289c1a1a tbv2: use std::decay_t with smart pointers
CodeGen v2 permits template parameters to be qualified. This means that if we
call `make_field` with a template parameter it will be qualified. However, we
don't qualify the types when generating meta functions such as `NameProvider`
and `TypeHandler`. This means these qualified types don't match up with the
expected type.

Use `std::decay_t` when forwarding the type to `NameProvider` and `TypeHandler`
so they're always the base type that they were generated with. Most of this is
covered by `make_field`, but there are direct references to `TypeHandler<Ctx,
T>` in a lot of `TypeHandler::type` fields. Fix the problematic types manually
for now, there may need to be a better solution with meta functions for this in
the future.

Test Plan:
- CI
- Added a test for `std::unique_ptr<const uint64_t>` to exercise this. Failed
  before, passes after.
- Added a test for `std::unique_ptr<const std::vector<uint64_t>>` to test a
  non-primitive type. Failed before, passes after.
2024-01-31 17:27:04 +00:00
..
integration tbv2: use std::decay_t with smart pointers 2024-01-31 17:27:04 +00:00
ci.oid.toml Update to clang/llvm 15 (#342) 2023-09-14 06:02:32 -07:00
CMakeLists.txt TypeGraph: Add IdentifyContainers mutator pass 2023-11-06 11:28:00 +00:00
integration_entry_doStuff_arg0.oid Initial commit 2022-12-19 06:37:51 -08:00
integration_entry_doStuff_this.oid Initial commit 2022-12-19 06:37:51 -08:00
integration_entry_inc_arg0.oid Initial commit 2022-12-19 06:37:51 -08:00
integration_mttest.cpp Update to clang/llvm 15 (#342) 2023-09-14 06:02:32 -07:00
integration_return_incN_arg0.oid Initial commit 2022-12-19 06:37:51 -08:00
integration_sleepy.cpp Update to clang/llvm 15 (#342) 2023-09-14 06:02:32 -07:00
integration.py integration_py: fix expected sizes 2023-05-31 19:00:10 +02:00
main.cpp Tests: Split common code out into type_graph_utils 2023-05-31 15:49:37 +01:00
mocks.h move all internal logic to oi::detail namespace 2023-07-26 18:01:38 +01:00
mttest.h formatting: force pointers/references with the type 2023-03-24 20:18:18 +00:00
test_add_children.cpp circleci: clean up codegen v1 runs 2024-01-03 17:29:59 +00:00
test_add_padding.cpp clang-format: disable bin packing 2023-11-13 18:19:53 +00:00
test_alignment_calc.cpp TypeGraph: Fix handling for classes which inherit from containers 2023-12-14 18:02:45 +00:00
test_codegen.cpp TypeGraph: Fix handling for classes which inherit from containers 2023-12-14 18:02:45 +00:00
test_compiler.cpp clang-format: disable bin packing 2023-11-13 18:19:53 +00:00
test_container_info.cpp container_info: switch to boost::regex (#465) 2024-01-23 10:58:58 -08:00
test_drgn_parser.cpp incomplete: name type in compiler errors 2024-01-09 15:08:25 +00:00
test_drgn_parser.h TypeGraph: Stop identifying containers in DrgnParser 2023-11-06 11:45:57 +00:00
test_enforce_compatibility.cpp CodeGen v2: Enable independent running without CodeGen v1 2023-12-15 14:57:24 +00:00
test_flattener.cpp incomplete: name type in compiler errors 2024-01-09 15:08:25 +00:00
test_identify_containers.cpp TypeGraph: Fix handling for classes which inherit from containers 2023-12-14 18:02:45 +00:00
test_key_capture.cpp Make KeyCapture work with nested typedefs (#473) 2024-01-31 17:03:05 +00:00
test_name_gen.cpp incomplete: name type in compiler errors 2024-01-09 15:08:25 +00:00
test_node_tracker.cpp TypeGraph: Remove NodeTracker from the TypeGraph class 2023-08-24 15:01:45 +01:00
test_parser.cpp clang-format: disable bin packing 2023-11-13 18:19:53 +00:00
test_prune.cpp TypeGraph: Fix handling for classes which inherit from containers 2023-12-14 18:02:45 +00:00
test_remove_members.cpp incomplete: name type in compiler errors 2024-01-09 15:08:25 +00:00
test_remove_top_level_pointer.cpp clang-format: disable bin packing 2023-11-13 18:19:53 +00:00
test_topo_sorter.cpp tbv2: fix pointer codegen 2024-01-18 16:22:18 +00:00
test_type_identifier.cpp TypeGraph: Fix handling for classes which inherit from containers 2023-12-14 18:02:45 +00:00
type_graph_utils.cpp TypeGraph: Fix handling for classes which inherit from containers 2023-12-14 18:02:45 +00:00
type_graph_utils.h TypeGraph: Add IdentifyContainers mutator pass 2023-11-06 11:28:00 +00:00
TypeGraphParser.cpp incomplete: name type in compiler errors 2024-01-09 15:08:25 +00:00
TypeGraphParser.h TypeGraph: Fix handling for classes which inherit from containers 2023-12-14 18:02:45 +00:00