bytecodealliance / bytecodealliance/wit-bindgen

csharp bindgen issues

Open
#1,515 0 comments 0 reactions 1 assignee Claimed by @yowl View on GitHub
gen-c#
Dominant language
Rust
Stars
1.5k
Forks
286
Avg merge
6h 32m
Merged PRs (30d)
19

Description

## Summary
This issue buckets several problems in `wit-bindgen csharp` to avoid opening many separate issues at once.

Each sub-item is independently reproducible and makes the generated C# fail to build.

If you prefer, I can split this bucket into separate issues.

## Repro template
```bash
WIT_BINDGEN=wit-bindgen
OUT=/tmp/wit-csharp
rm -rf "$OUT" && mkdir -p "$OUT"

"$WIT_BINDGEN" csharp --runtime native-aot --out-dir "$OUT" /tmp/CASE.wit

cat > "$OUT/Repro.csproj" <<'XML'


net8.0
true

XML

dotnet build -c Release "$OUT/Repro.csproj"
```

## Sub-issues

### Sub-issue 1

#### Reproduction
```
package local:demo;

world w {
export i;
}

interface i {
/// */
record r {
x: u32,
}
}
```

### Sub-issue 2

#### Reproduction
```
package local:demo;

world w {
export i;
}

interface i {
resource wasm-interop;

foo: func(x: own);
}
```

### Sub-issue 3

#### Reproduction
```
package local:demo;

world w {
import i;
}

interface i {
resource t-handle;
}
```

### Sub-issue 4

#### Reproduction
```
package local:demo;

world w {
export i;
}

interface i {
resource r;
}
```

### Sub-issue 5

#### Reproduction
```
package local:demo;

world w {
import i;
}

interface i {
foo: func(cleanups: string);
}
```

### Sub-issue 6

#### Reproduction
```
package local:demo;

world w {
export i;
}

interface i {
foo: func(DELEGATE: u32);
}
```

### Sub-issue 7

#### Reproduction
```
package local:demo;

world w {
export i;
}

interface i {
variant tags {
a,
}

foo: func(x: tags);
}
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.