Union cast failed
@simensgreen đang làm issue này rồi.
Từ ngày 23/4/2025.
Đánh giá
Issue này chưa được đánh giá.
Mô tả
Expected Behaviour
Can cast [f32; 5] as Data { a: f32, b: [f32; 3], c: f32 }
Example & Steps To Reproduce
#[repr(C)]
#[derive(Clone, Copy)]
struct Data {
a: f32,
b: [f32; 3],
c: f32,
}
union DataOrArray {
arr: [f32; 5],
str: Data,
}
impl DataOrArray {
fn arr(self) -> [f32; 5] { unsafe { self.arr } }
fn new(arr: [f32; 5]) -> Self { Self { arr } }
}
in shader:
let dora = DataOrArray::new([0.0, 0.0, 0.0, 0.0, 0.0]);
let arr = dora.arr();
Produces:
error: cannot cast between pointer types
from `*struct types::Data { a: f32, b: [f32; 3], c: f32 }`
to `*[f32; 5]`
System Info
- Rust: rustc 1.84.0-nightly (b19329a37 2024-11-21)
- OS: MacOS 15.3.2
- GPU: M2 Max
- rust-gpu: 698f10ac14b7c952394ac5620004e4e973308902
- Ngôn ngữ chính
- Rust
- Star
- 3.4k
- Fork
- 126
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của Rust-GPU/rust-gpu
-
enhancement
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 68/100
-
enhancement
Rust-GPU/rust-gpu#643 · 2 bình luận · 1 reaction · 1 người được giao ·
-
bug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 48/100
-
bug
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 48/100
-
async functions cause ICE Đang mởbug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 48/100
Tất cả issue của Rust-GPU/rust-gpu
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
kwakseongjae/auto-hwp#319 ·
-
area:cli bug filter-quality good first issue priority:medium
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 72/100
bevyengine/bevy#25861 ·
-
comp-datalake
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
ClickHouse/ClickHouse#121222 ·
-
enhancement remote
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100