Skip to content
New 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

build the bindings dynamically #20

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from
Draft

build the bindings dynamically #20

wants to merge 2 commits into from

Conversation

fneddy
Copy link

@fneddy fneddy commented Nov 27, 2024

i tried to generate the bindings dynamically directly from the lldb headers but they would not work. I assume you hit the same as you rewrote the lldb API to wrap all returned objects and move them to the heap.

i spend some time and found the reason and a workaround.

@fneddy fneddy marked this pull request as draft November 27, 2024 11:30
@waywardmonkeys
Copy link
Contributor

Are the bindings generated this way actually compatible with what we have before? What disadvantages are there?

@fneddy
Copy link
Author

fneddy commented Nov 27, 2024

it definitely breaks lldb.rs.

here some reasoning:

pro:

  • instantly complete c++ lldb api is available
  • instant update on lldb api changes by recompiling, no need to rewrite lldb-sys
  • no bugs in lldb-sys. at least no bugs made by developers, through there might be many bugs in bindgen.

con:

  • need to change a huge pile of code in lldb.rs
  • might result in api changes for lldb.rs itself

for now my honest opinion is to not seriously attempt to merge this PR. I like lldb and always wanted to play with it. maybe i get some time to play with lldb.rs and can come back with more facts. until then I would treat this more like a proof of concept.

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.

2 participants