Repository navigation
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
ctypes: unify the foreign-call path on a single host_env
call()API #8235New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Uh oh!
There was an error while loading. Please reload this page.
ctypes: unify the foreign-call path on a single host_env
call()API #8235Changes from 1 commit
1c5b1132802682b5c8870c49d46588eb7849ccb21640d63d74681347File filter
Filter by extension
Conversations
Uh oh!
There was an error while loading. Please reload this page.
Jump to
Uh oh!
There was an error while loading. Please reload this page.
callforeign-call scaffoldingWith the VM `_ctypes` and pyre both routed through `call`, delete the foreign-call paths and libffi-type builders that no longer have a consumer: - `callproc` (the low-level libffi `Vec<Type>` / `&[Arg]` entry) and its `CallResult` return type plus `call_result_bytes`. - `callproc_simple` and its `SimpleArg` / `SimpleRestype` / `SimpleCallError` types (the pointer-only slice added for pyre's first cut), and the `lookup_function_symbol_addr_str` helper, along with their tests. - `ffi_type_for_layout` + `CTypeParamKind`, `ffi_type_from_format`, `ffi_type_from_tag`, and `ffi_type_for_return_size` — the aggregate/simple libffi-type builders the old marshalling used. `call` and `CTypeLayout` build their own libffi types from `ffi_type_from_code` and the small `ffi_{pointer,byte_struct,repeat,void,i32,f64}_type` helpers, which stay. `simple_type_chars` stays (still used by pyre's simple-type validation). The `call` doc no longer references `callproc_simple`. A stale comment in the VM's result decoder that named `call_result_bytes` is reworded. host_env drops from 4051 to 3535 lines; the `call` ABI unit tests remain (24 tests). test_ctypes is unchanged at run=322 skipped=58. Assisted-by: ClaudeUh oh!
There was an error while loading. Please reload this page.
There are no files selected for viewing
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.