Skip to content

fix(hy-check): model complex64 and complex128 as Primitive shapes across boundary checks (HYB-E3005) (fixes #4000) - #4001

Open
bradwue313 wants to merge 1 commit into
limitlessprojects:mainfrom
bradwue313:fix/shape-complex-primitive-sendability
Open

bradwue313 wants to merge 1 commit into
limitlessprojects:mainfrom
bradwue313:fix/shape-complex-primitive-sendability

Conversation

@bradwue313

Copy link
Copy Markdown
Contributor

Fixes #4000

Changes

  • In compiler/crates/hy-check/src/shape.rs:
    • Classify complex64, complex128, c64, and c128 as TypeShape::Primitive in named_shape_depth.
    • Classify complex64, complex128, complex, real, and imag as TypeShape::Primitive in call_shape.
    • Filter complex64 and complex128 in receiver_type_params.
  • Added regression test suite compiler/crates/hy-check/tests/shape_complex_primitive_sendability.rs verifying bare complex values, structs containing complex fields, and channel sends accept cleanly with 0 diagnostics.

Settlement Coordinates

  • Author: @bradwue313
  • Settlement Wallet (USDC on Base): 0x38e0f40371be8b30f0909f890a1f701a25cd30cd
  • Solana USDC / SOL: CRdpAku2qovsPN2wGej5AbgMNtuhRQtq3GKFDFfMkJsv

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

hy-check(shape): named_shape_depth and call_shape omit complex64 and complex128, falsely rejecting sendable values with HYB-E3005

1 participant