hyperlight-dev / hyperlight-dev/hyperlight
hyperlight-component-macros generates name collisions
- Vorherrschende Sprache
- Rust
- Sterne
- 4.7k
- Forks
- 208
- Ø Merge
- 1 T. 7 Std.
- Gemergte PRs (30 T.)
- 47
Beschreibung
### What happened?
The code generated by hyperlight-component-macros fails to compile.
If produces the following errors:
```
error[E0428]: the name `Types` is defined multiple times
--> src/main.rs:7:1
|
7 | hyperlight_component_macro::host_bindgen!();
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Types` redefined here
|
= note: `Types` must be defined only once in the type namespace of this trait
= note: this error originates in the macro `hyperlight_component_macro::host_bindgen` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0428]: the name `types` is defined multiple times
--> src/main.rs:7:1
|
7 | hyperlight_component_macro::host_bindgen!();
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `types` redefined here
|
= note: `types` must be defined only once in the value namespace of this trait
= note: this error originates in the macro `hyperlight_component_macro::host_bindgen` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0425]: cannot find value `rts` in this scope
--> src/main.rs:7:1
|
7 | hyperlight_component_macro::host_bindgen!();
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
|
= note: this error originates in the macro `hyperlight_component_macro::host_bindgen` (in Nightly builds, run with -Z macro-backtrace for more info)
```
### What did you expect to happen?
The generated code to compile succesfully.
### Steps to reproduce the behavior
Generate host_bindings!() using the following world:
```wit
package root:component;
world root {
import wasi:cli/environment@0.2.3;
import wasi:io/poll@0.2.3;
import wasi:clocks/monotonic-clock@0.2.3;
import wasi:io/error@0.2.3;
import wasi:io/streams@0.2.3;
import wasi:http/types@0.2.3;
import wasi:cli/stdin@0.2.3;
import wasi:cli/stdout@0.2.3;
import wasi:cli/stderr@0.2.3;
import wasi:cli/terminal-input@0.2.3;
import wasi:cli/terminal-output@0.2.3;
import wasi:cli/terminal-stdin@0.2.3;
import wasi:cli/terminal-stdout@0.2.3;
import wasi:cli/terminal-stderr@0.2.3;
import wasi:clocks/wall-clock@0.2.3;
import wasi:filesystem/types@0.2.3;
import wasi:filesystem/preopens@0.2.3;
import wasi:random/random@0.2.3;
import wasi:http/outgoing-handler@0.2.3;
export wasi:http/incoming-handler@0.2.3;
}
```
```rust
extern crate alloc;
mod bindings {
use super::alloc;
hyperlight_component_macro::host_bindgen!();
}
fn main() {
}
```
### Hyperlight Version
0.8.0
### OS version
```console
On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here
On Windows:
C:\> cmd /c ver
# paste output here
````
### Additional Information
_No response_
Beitragsleitfaden
Bewertung
Dieses Issue wurde noch nicht bewertet.