diff --git a/crates/rustc_codegen_spirv/src/symbols.rs b/crates/rustc_codegen_spirv/src/symbols.rs index 4129187b39..3caea93438 100644 --- a/crates/rustc_codegen_spirv/src/symbols.rs +++ b/crates/rustc_codegen_spirv/src/symbols.rs @@ -146,15 +146,9 @@ const BUILTINS: &[(&str, BuiltIn)] = { const STORAGE_CLASSES: &[(&str, StorageClass)] = { use StorageClass::*; &[ - ("uniform_constant", UniformConstant), - ("input", Input), ("uniform", Uniform), - ("output", Output), ("workgroup", Workgroup), ("cross_workgroup", CrossWorkgroup), - ("private", Private), - ("function", Function), - ("generic", Generic), ("push_constant", PushConstant), ("atomic_counter", AtomicCounter), ("image", Image), diff --git a/tests/ui/spirv-attr/bad-deduce-storage-class.rs b/tests/ui/spirv-attr/bad-deduce-storage-class.rs index 91c19b63fd..d3ac54ae57 100644 --- a/tests/ui/spirv-attr/bad-deduce-storage-class.rs +++ b/tests/ui/spirv-attr/bad-deduce-storage-class.rs @@ -6,7 +6,6 @@ use spirv_std::{spirv, Image}; #[spirv(vertex)] pub fn main( #[spirv(uniform)] error: &Image!(2D, type=f32), - #[spirv(uniform_constant)] warning: &Image!(2D, type=f32), ) { } diff --git a/tests/ui/spirv-attr/bad-deduce-storage-class.stderr b/tests/ui/spirv-attr/bad-deduce-storage-class.stderr index 55643c7604..7ec34f286c 100644 --- a/tests/ui/spirv-attr/bad-deduce-storage-class.stderr +++ b/tests/ui/spirv-attr/bad-deduce-storage-class.stderr @@ -13,19 +13,13 @@ help: remove storage class attribute to use `UniformConstant` as storage class 8 | #[spirv(uniform)] error: &Image!(2D, type=f32), | ^^^^^^^ -warning: redundant storage class attribute, storage class is deduced from type - --> $DIR/bad-deduce-storage-class.rs:9:13 - | -9 | #[spirv(uniform_constant)] warning: &Image!(2D, type=f32), - | ^^^^^^^^^^^^^^^^ - error: entry parameter type must be by-reference: `&spirv_std::image::Image` - --> $DIR/bad-deduce-storage-class.rs:15:27 + --> $DIR/bad-deduce-storage-class.rs:14:27 | -15 | pub fn issue_585(invalid: Image!(2D, type=f32)) {} +14 | pub fn issue_585(invalid: Image!(2D, type=f32)) {} | ^^^^^^^^^^^^^^^^^^^^ | = note: this error originates in the macro `Image` (in Nightly builds, run with -Z macro-backtrace for more info) -error: aborting due to 2 previous errors; 1 warning emitted +error: aborting due to 2 previous errors diff --git a/tests/ui/spirv-attr/invalid-storage-class.rs b/tests/ui/spirv-attr/invalid-storage-class.rs deleted file mode 100644 index 9cb86bf6ae..0000000000 --- a/tests/ui/spirv-attr/invalid-storage-class.rs +++ /dev/null @@ -1,15 +0,0 @@ -// Tests that certain storage class `#[spirv(...)]` attributes are disallowed. - -// build-fail - -use spirv_std::spirv; - -#[spirv(vertex)] -fn _entry( - #[spirv(input)] _: (), - #[spirv(output)] _: (), - #[spirv(private)] _: (), - #[spirv(function)] _: (), - #[spirv(generic)] _: (), -) { -} diff --git a/tests/ui/spirv-attr/invalid-storage-class.stderr b/tests/ui/spirv-attr/invalid-storage-class.stderr deleted file mode 100644 index e3d8a39cb0..0000000000 --- a/tests/ui/spirv-attr/invalid-storage-class.stderr +++ /dev/null @@ -1,32 +0,0 @@ -error: `Input` storage class is the default and should not be explicitly specified - --> $DIR/invalid-storage-class.rs:9:13 - | -9 | #[spirv(input)] _: (), - | ^^^^^ - -error: `Output` storage class is the default and should not be explicitly specified - --> $DIR/invalid-storage-class.rs:10:13 - | -10 | #[spirv(output)] _: (), - | ^^^^^^ - -error: `Private` storage class can not be used as part of an entry's interface - --> $DIR/invalid-storage-class.rs:11:13 - | -11 | #[spirv(private)] _: (), - | ^^^^^^^ - -error: `Function` storage class can not be used as part of an entry's interface - --> $DIR/invalid-storage-class.rs:12:13 - | -12 | #[spirv(function)] _: (), - | ^^^^^^^^ - -error: `Generic` storage class can not be used as part of an entry's interface - --> $DIR/invalid-storage-class.rs:13:13 - | -13 | #[spirv(generic)] _: (), - | ^^^^^^^ - -error: aborting due to 5 previous errors - diff --git a/tests/ui/storage_class/mutability-errors.rs b/tests/ui/storage_class/mutability-errors.rs index e31ed99c80..8240d9102c 100644 --- a/tests/ui/storage_class/mutability-errors.rs +++ b/tests/ui/storage_class/mutability-errors.rs @@ -8,7 +8,6 @@ use spirv_std::{image::Image2d, spirv}; #[spirv(fragment)] pub fn main( #[spirv(descriptor_set = 0, binding = 0)] implicit_uniform_constant_mut: &mut Image2d, - #[spirv(uniform_constant, descriptor_set = 0, binding = 0)] uniform_constant_mut: &mut Image2d, #[spirv(uniform, descriptor_set = 0, binding = 0)] uniform_mut: &mut u32, #[spirv(uniform, descriptor_set = 0, binding = 0)] uniform_interior_mut: &AtomicU32, #[spirv(push_constant)] push_constant_mut: &mut u32, diff --git a/tests/ui/storage_class/mutability-errors.stderr b/tests/ui/storage_class/mutability-errors.stderr index dc0a1c17dc..6e5d107582 100644 --- a/tests/ui/storage_class/mutability-errors.stderr +++ b/tests/ui/storage_class/mutability-errors.stderr @@ -10,71 +10,53 @@ note: ...but storage class `UniformConstant` is read-only 10 | #[spirv(descriptor_set = 0, binding = 0)] implicit_uniform_constant_mut: &mut Image2d, | ^^^^^^^^^^^^ `UniformConstant` deduced from type -warning: redundant storage class attribute, storage class is deduced from type - --> $DIR/mutability-errors.rs:11:13 - | -11 | #[spirv(uniform_constant, descriptor_set = 0, binding = 0)] uniform_constant_mut: &mut Image2d, - | ^^^^^^^^^^^^^^^^ - error: entry-point requires a mutable reference... - --> $DIR/mutability-errors.rs:11:87 + --> $DIR/mutability-errors.rs:11:69 | -11 | #[spirv(uniform_constant, descriptor_set = 0, binding = 0)] uniform_constant_mut: &mut Image2d, - | ^^^^^^^^^^^^ - | -note: ...but storage class `UniformConstant` is read-only - --> $DIR/mutability-errors.rs:11:13 - | -11 | #[spirv(uniform_constant, descriptor_set = 0, binding = 0)] uniform_constant_mut: &mut Image2d, - | ^^^^^^^^^^^^^^^^ `UniformConstant` specified in attribute - -error: entry-point requires a mutable reference... - --> $DIR/mutability-errors.rs:12:69 - | -12 | #[spirv(uniform, descriptor_set = 0, binding = 0)] uniform_mut: &mut u32, +11 | #[spirv(uniform, descriptor_set = 0, binding = 0)] uniform_mut: &mut u32, | ^^^^^^^^ | note: ...but storage class `Uniform` is read-only - --> $DIR/mutability-errors.rs:12:13 + --> $DIR/mutability-errors.rs:11:13 | -12 | #[spirv(uniform, descriptor_set = 0, binding = 0)] uniform_mut: &mut u32, +11 | #[spirv(uniform, descriptor_set = 0, binding = 0)] uniform_mut: &mut u32, | ^^^^^^^ `Uniform` specified in attribute error: entry-point requires interior mutability... - --> $DIR/mutability-errors.rs:13:78 + --> $DIR/mutability-errors.rs:12:78 | -13 | #[spirv(uniform, descriptor_set = 0, binding = 0)] uniform_interior_mut: &AtomicU32, +12 | #[spirv(uniform, descriptor_set = 0, binding = 0)] uniform_interior_mut: &AtomicU32, | ^^^^^^^^^^ | note: ...but storage class `Uniform` is read-only - --> $DIR/mutability-errors.rs:13:13 + --> $DIR/mutability-errors.rs:12:13 | -13 | #[spirv(uniform, descriptor_set = 0, binding = 0)] uniform_interior_mut: &AtomicU32, +12 | #[spirv(uniform, descriptor_set = 0, binding = 0)] uniform_interior_mut: &AtomicU32, | ^^^^^^^ `Uniform` specified in attribute error: entry-point requires a mutable reference... - --> $DIR/mutability-errors.rs:14:48 + --> $DIR/mutability-errors.rs:13:48 | -14 | #[spirv(push_constant)] push_constant_mut: &mut u32, +13 | #[spirv(push_constant)] push_constant_mut: &mut u32, | ^^^^^^^^ | note: ...but storage class `PushConstant` is read-only - --> $DIR/mutability-errors.rs:14:13 + --> $DIR/mutability-errors.rs:13:13 | -14 | #[spirv(push_constant)] push_constant_mut: &mut u32, +13 | #[spirv(push_constant)] push_constant_mut: &mut u32, | ^^^^^^^^^^^^^ `PushConstant` specified in attribute error: entry-point requires interior mutability... - --> $DIR/mutability-errors.rs:15:57 + --> $DIR/mutability-errors.rs:14:57 | -15 | #[spirv(push_constant)] push_constant_interior_mut: &AtomicU32, +14 | #[spirv(push_constant)] push_constant_interior_mut: &AtomicU32, | ^^^^^^^^^^ | note: ...but storage class `PushConstant` is read-only - --> $DIR/mutability-errors.rs:15:13 + --> $DIR/mutability-errors.rs:14:13 | -15 | #[spirv(push_constant)] push_constant_interior_mut: &AtomicU32, +14 | #[spirv(push_constant)] push_constant_interior_mut: &AtomicU32, | ^^^^^^^^^^^^^ `PushConstant` specified in attribute -error: aborting due to 6 previous errors; 1 warning emitted +error: aborting due to 5 previous errors