diff options
| author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2021-07-13 10:35:20 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-07-13 10:35:20 +0000 |
| commit | 62622c6940b3a794b9709e5e6cc2b78019a8fe08 (patch) | |
| tree | 22dc8252a379b2041da2a1dbfea9ec9e4e2d5cb3 /editors/code/src | |
| parent | 7988c80dd5c77970986081a6405ce742570ba8db (diff) | |
| parent | e240eb67a86bb4deff2762e3c46f47278ccd975c (diff) | |
| download | rust-62622c6940b3a794b9709e5e6cc2b78019a8fe08.tar.gz rust-62622c6940b3a794b9709e5e6cc2b78019a8fe08.zip | |
Merge #9550
9550: Proc macro multi abi proof of concept r=matklad a=alexjg #8925 was irritating me so I thought I would have a bash at fixing it. What I've done here is copy the `crates/proc_macro_srv/src/proc_macro` code (which is copied from `<RUST>/library/proc_macro`) to `crates/proc_macro_srv/src/proc_macro_nightly` and the modified the nightly version to include the changes from https://github.com/rust-analyzer/rust-analyzer/pull/9047 and https://github.com/yotamofek/rust-analyzer/commit/aeb7b183a2302af968f1110fb3cbd00c76a34974 This gives us the code to support both stable and nightly ABIs. Then we use the `proc_macro_api::version::read_dylib_info` to determine which version of the ABI to load when creating a `ProcMacroLibraryLibLoading` (which is now an enum). This seems to work for me. The code could be cleaned up but I wanted to see if the approach makes sense before I spend more time on it. I've split the change into two commits, the first is just copying and modifying the `proc_macro` crate, the second contains most of the interesting work around figuring out which ABI to use. Co-authored-by: Alex Good <alex@memoryandthought.me> Co-authored-by: alexjg <alex@memoryandthought.me>
Diffstat (limited to 'editors/code/src')
0 files changed, 0 insertions, 0 deletions
