The GitHub Actions job "CI" on 
tvm-ffi.git/junrushao/2026-07-15/generate-layout-compatible-cpp-object-declarations
 has failed.
Run started by GitHub user junrushao (triggered by junrushao).

Head commit for run:
fb0e01f044eab7a70dbd8e8905cfd4ff8be40f7f / Junru Shao <[email protected]>
fix(dataclasses): use ObjectPtr in generated containers

Architecture:
- Lower base and dynamically registered object schemas through a single 
ObjectPtr carrier for both standalone fields and container arguments.
- Reuse the declared-ABI-object marker in ObjectPtr storage eligibility so 
recursive and mutually recursive generated declarations remain valid while 
their object types are incomplete.
- Remove the raw-pointer storage bypass and restore raw pointer traits to their 
normal complete Object-subclass constraint.

Public Interfaces:
- Generated Array, List, Map, and Dict object arguments now use 
ObjectPtr<TObject> instead of TObject*.
- Standalone object fields and built-in public object wrappers are unchanged, 
and the carrier remains pointer-sized so generated structure size, alignment, 
and offsets are unchanged.

UI/UX:
- none.

Behavioral Changes:
- Generated C++ declarations expose explicit owning ObjectPtr template 
arguments for object-valued containers.
- Native source probes retain raw complete pointers only where needed to avoid 
the rejected Array<TObject> shorthand.

Docs:
- No documentation changes are required because existing guides do not promise 
the exact generated carrier spelling; expected-output and compile tests define 
this representation contract.

Tests:
- Executed: editable package rebuild; pre-commit run --all-files; clang-tidy 
21.1.1 on tests/cpp/test_abi_object.cc and tests/cpp/test_object_ptr.cc; pytest 
tests/python/test_dataclass_gen_abi_cpp.py; full tests/python suite; C++ 
rebuild, CTest, and direct GoogleTest binary.
- Result: all validation passed; generator tests passed 12/12, Python passed 
2338 with 18 skipped and 3 xfailed, and all 449 enabled C++ tests passed with 2 
disabled.

Untested Edge Cases:
- Rust tests were not run because cargo and rustup are unavailable locally. 
Risk is low because this change is limited to Python C++ declaration generation 
and C++ container type eligibility.

Refs: https://github.com/apache/tvm-ffi/pull/670

Report URL: https://github.com/apache/tvm-ffi/actions/runs/29455643620

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to