Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit f5cfb90

Browse files
authoredNov 23, 2024
Rollup merge of rust-lang#133374 - RalfJung:abi_unsupported_vector_types, r=jieyouxu
show abi_unsupported_vector_types lint in future breakage reports The lint is now riding the train to 1.84. Given that crater found no case of this lint triggering at all, IMO it's fine to make it "report in deps" already for 1.85. Part of rust-lang#116558.
2 parents ae4fdf1 + d730319 commit f5cfb90

7 files changed

+624
-1
lines changed
 

‎compiler/rustc_lint_defs/src/builtin.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5173,7 +5173,7 @@ declare_lint! {
51735173
Warn,
51745174
"this function call or definition uses a vector type which is not enabled",
51755175
@future_incompatible = FutureIncompatibleInfo {
5176-
reason: FutureIncompatibilityReason::FutureReleaseErrorDontReportInDeps,
5176+
reason: FutureIncompatibilityReason::FutureReleaseErrorReportInDeps,
51775177
reference: "issue #116558 <https://github.com/rust-lang/rust/issues/116558>",
51785178
};
51795179
}

‎tests/ui/simd-abi-checks-empty-list.stderr

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,14 @@ LL | pub extern "C" fn pass_by_vec(_: SimdVec) {}
1010

1111
warning: 1 warning emitted
1212

13+
Future incompatibility report: Future breakage diagnostic:
14+
warning: this function definition uses a SIMD vector type that is not currently supported with the chosen ABI
15+
--> $DIR/simd-abi-checks-empty-list.rs:17:1
16+
|
17+
LL | pub extern "C" fn pass_by_vec(_: SimdVec) {}
18+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
19+
|
20+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
21+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
22+
= note: `#[warn(abi_unsupported_vector_types)]` on by default
23+

‎tests/ui/simd-abi-checks-s390x.z10.stderr

Lines changed: 164 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,3 +109,167 @@ LL | extern "C" fn vector_transparent_wrapper_arg(x: TransparentWrapper<i8x16>)
109109

110110
error: aborting due to 10 previous errors
111111

112+
Future incompatibility report: Future breakage diagnostic:
113+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
114+
--> $DIR/simd-abi-checks-s390x.rs:46:1
115+
|
116+
LL | extern "C" fn vector_ret_small(x: &i8x8) -> i8x8 {
117+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
118+
|
119+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
120+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
121+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
122+
note: the lint level is defined here
123+
--> $DIR/simd-abi-checks-s390x.rs:15:9
124+
|
125+
LL | #![deny(abi_unsupported_vector_types)]
126+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
127+
128+
Future breakage diagnostic:
129+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
130+
--> $DIR/simd-abi-checks-s390x.rs:52:1
131+
|
132+
LL | extern "C" fn vector_ret(x: &i8x16) -> i8x16 {
133+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
134+
|
135+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
136+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
137+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
138+
note: the lint level is defined here
139+
--> $DIR/simd-abi-checks-s390x.rs:15:9
140+
|
141+
LL | #![deny(abi_unsupported_vector_types)]
142+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
143+
144+
Future breakage diagnostic:
145+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
146+
--> $DIR/simd-abi-checks-s390x.rs:99:1
147+
|
148+
LL | / extern "C" fn vector_transparent_wrapper_ret_small(
149+
LL | | x: &TransparentWrapper<i8x8>,
150+
LL | | ) -> TransparentWrapper<i8x8> {
151+
| |_____________________________^ function defined here
152+
|
153+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
154+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
155+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
156+
note: the lint level is defined here
157+
--> $DIR/simd-abi-checks-s390x.rs:15:9
158+
|
159+
LL | #![deny(abi_unsupported_vector_types)]
160+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
161+
162+
Future breakage diagnostic:
163+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
164+
--> $DIR/simd-abi-checks-s390x.rs:107:1
165+
|
166+
LL | / extern "C" fn vector_transparent_wrapper_ret(
167+
LL | | x: &TransparentWrapper<i8x16>,
168+
LL | | ) -> TransparentWrapper<i8x16> {
169+
| |______________________________^ function defined here
170+
|
171+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
172+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
173+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
174+
note: the lint level is defined here
175+
--> $DIR/simd-abi-checks-s390x.rs:15:9
176+
|
177+
LL | #![deny(abi_unsupported_vector_types)]
178+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
179+
180+
Future breakage diagnostic:
181+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
182+
--> $DIR/simd-abi-checks-s390x.rs:123:1
183+
|
184+
LL | extern "C" fn vector_arg_small(x: i8x8) -> i64 {
185+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
186+
|
187+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
188+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
189+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
190+
note: the lint level is defined here
191+
--> $DIR/simd-abi-checks-s390x.rs:15:9
192+
|
193+
LL | #![deny(abi_unsupported_vector_types)]
194+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
195+
196+
Future breakage diagnostic:
197+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
198+
--> $DIR/simd-abi-checks-s390x.rs:129:1
199+
|
200+
LL | extern "C" fn vector_arg(x: i8x16) -> i64 {
201+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
202+
|
203+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
204+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
205+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
206+
note: the lint level is defined here
207+
--> $DIR/simd-abi-checks-s390x.rs:15:9
208+
|
209+
LL | #![deny(abi_unsupported_vector_types)]
210+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
211+
212+
Future breakage diagnostic:
213+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
214+
--> $DIR/simd-abi-checks-s390x.rs:141:1
215+
|
216+
LL | extern "C" fn vector_wrapper_arg_small(x: Wrapper<i8x8>) -> i64 {
217+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
218+
|
219+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
220+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
221+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
222+
note: the lint level is defined here
223+
--> $DIR/simd-abi-checks-s390x.rs:15:9
224+
|
225+
LL | #![deny(abi_unsupported_vector_types)]
226+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
227+
228+
Future breakage diagnostic:
229+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
230+
--> $DIR/simd-abi-checks-s390x.rs:147:1
231+
|
232+
LL | extern "C" fn vector_wrapper_arg(x: Wrapper<i8x16>) -> i64 {
233+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
234+
|
235+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
236+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
237+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
238+
note: the lint level is defined here
239+
--> $DIR/simd-abi-checks-s390x.rs:15:9
240+
|
241+
LL | #![deny(abi_unsupported_vector_types)]
242+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
243+
244+
Future breakage diagnostic:
245+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
246+
--> $DIR/simd-abi-checks-s390x.rs:159:1
247+
|
248+
LL | extern "C" fn vector_transparent_wrapper_arg_small(x: TransparentWrapper<i8x8>) -> i64 {
249+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
250+
|
251+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
252+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
253+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
254+
note: the lint level is defined here
255+
--> $DIR/simd-abi-checks-s390x.rs:15:9
256+
|
257+
LL | #![deny(abi_unsupported_vector_types)]
258+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
259+
260+
Future breakage diagnostic:
261+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
262+
--> $DIR/simd-abi-checks-s390x.rs:165:1
263+
|
264+
LL | extern "C" fn vector_transparent_wrapper_arg(x: TransparentWrapper<i8x16>) -> i64 {
265+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
266+
|
267+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
268+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
269+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
270+
note: the lint level is defined here
271+
--> $DIR/simd-abi-checks-s390x.rs:15:9
272+
|
273+
LL | #![deny(abi_unsupported_vector_types)]
274+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
275+

‎tests/ui/simd-abi-checks-s390x.z13_no_vector.stderr

Lines changed: 164 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,3 +109,167 @@ LL | extern "C" fn vector_transparent_wrapper_arg(x: TransparentWrapper<i8x16>)
109109

110110
error: aborting due to 10 previous errors
111111

112+
Future incompatibility report: Future breakage diagnostic:
113+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
114+
--> $DIR/simd-abi-checks-s390x.rs:46:1
115+
|
116+
LL | extern "C" fn vector_ret_small(x: &i8x8) -> i8x8 {
117+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
118+
|
119+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
120+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
121+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
122+
note: the lint level is defined here
123+
--> $DIR/simd-abi-checks-s390x.rs:15:9
124+
|
125+
LL | #![deny(abi_unsupported_vector_types)]
126+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
127+
128+
Future breakage diagnostic:
129+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
130+
--> $DIR/simd-abi-checks-s390x.rs:52:1
131+
|
132+
LL | extern "C" fn vector_ret(x: &i8x16) -> i8x16 {
133+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
134+
|
135+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
136+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
137+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
138+
note: the lint level is defined here
139+
--> $DIR/simd-abi-checks-s390x.rs:15:9
140+
|
141+
LL | #![deny(abi_unsupported_vector_types)]
142+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
143+
144+
Future breakage diagnostic:
145+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
146+
--> $DIR/simd-abi-checks-s390x.rs:99:1
147+
|
148+
LL | / extern "C" fn vector_transparent_wrapper_ret_small(
149+
LL | | x: &TransparentWrapper<i8x8>,
150+
LL | | ) -> TransparentWrapper<i8x8> {
151+
| |_____________________________^ function defined here
152+
|
153+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
154+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
155+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
156+
note: the lint level is defined here
157+
--> $DIR/simd-abi-checks-s390x.rs:15:9
158+
|
159+
LL | #![deny(abi_unsupported_vector_types)]
160+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
161+
162+
Future breakage diagnostic:
163+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
164+
--> $DIR/simd-abi-checks-s390x.rs:107:1
165+
|
166+
LL | / extern "C" fn vector_transparent_wrapper_ret(
167+
LL | | x: &TransparentWrapper<i8x16>,
168+
LL | | ) -> TransparentWrapper<i8x16> {
169+
| |______________________________^ function defined here
170+
|
171+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
172+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
173+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
174+
note: the lint level is defined here
175+
--> $DIR/simd-abi-checks-s390x.rs:15:9
176+
|
177+
LL | #![deny(abi_unsupported_vector_types)]
178+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
179+
180+
Future breakage diagnostic:
181+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
182+
--> $DIR/simd-abi-checks-s390x.rs:123:1
183+
|
184+
LL | extern "C" fn vector_arg_small(x: i8x8) -> i64 {
185+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
186+
|
187+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
188+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
189+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
190+
note: the lint level is defined here
191+
--> $DIR/simd-abi-checks-s390x.rs:15:9
192+
|
193+
LL | #![deny(abi_unsupported_vector_types)]
194+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
195+
196+
Future breakage diagnostic:
197+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
198+
--> $DIR/simd-abi-checks-s390x.rs:129:1
199+
|
200+
LL | extern "C" fn vector_arg(x: i8x16) -> i64 {
201+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
202+
|
203+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
204+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
205+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
206+
note: the lint level is defined here
207+
--> $DIR/simd-abi-checks-s390x.rs:15:9
208+
|
209+
LL | #![deny(abi_unsupported_vector_types)]
210+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
211+
212+
Future breakage diagnostic:
213+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
214+
--> $DIR/simd-abi-checks-s390x.rs:141:1
215+
|
216+
LL | extern "C" fn vector_wrapper_arg_small(x: Wrapper<i8x8>) -> i64 {
217+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
218+
|
219+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
220+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
221+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
222+
note: the lint level is defined here
223+
--> $DIR/simd-abi-checks-s390x.rs:15:9
224+
|
225+
LL | #![deny(abi_unsupported_vector_types)]
226+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
227+
228+
Future breakage diagnostic:
229+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
230+
--> $DIR/simd-abi-checks-s390x.rs:147:1
231+
|
232+
LL | extern "C" fn vector_wrapper_arg(x: Wrapper<i8x16>) -> i64 {
233+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
234+
|
235+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
236+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
237+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
238+
note: the lint level is defined here
239+
--> $DIR/simd-abi-checks-s390x.rs:15:9
240+
|
241+
LL | #![deny(abi_unsupported_vector_types)]
242+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
243+
244+
Future breakage diagnostic:
245+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
246+
--> $DIR/simd-abi-checks-s390x.rs:159:1
247+
|
248+
LL | extern "C" fn vector_transparent_wrapper_arg_small(x: TransparentWrapper<i8x8>) -> i64 {
249+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
250+
|
251+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
252+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
253+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
254+
note: the lint level is defined here
255+
--> $DIR/simd-abi-checks-s390x.rs:15:9
256+
|
257+
LL | #![deny(abi_unsupported_vector_types)]
258+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
259+
260+
Future breakage diagnostic:
261+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
262+
--> $DIR/simd-abi-checks-s390x.rs:165:1
263+
|
264+
LL | extern "C" fn vector_transparent_wrapper_arg(x: TransparentWrapper<i8x16>) -> i64 {
265+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
266+
|
267+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
268+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
269+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
270+
note: the lint level is defined here
271+
--> $DIR/simd-abi-checks-s390x.rs:15:9
272+
|
273+
LL | #![deny(abi_unsupported_vector_types)]
274+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
275+

‎tests/ui/simd-abi-checks-s390x.z13_soft_float.stderr

Lines changed: 164 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,3 +109,167 @@ LL | extern "C" fn vector_transparent_wrapper_arg(x: TransparentWrapper<i8x16>)
109109

110110
error: aborting due to 10 previous errors
111111

112+
Future incompatibility report: Future breakage diagnostic:
113+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
114+
--> $DIR/simd-abi-checks-s390x.rs:46:1
115+
|
116+
LL | extern "C" fn vector_ret_small(x: &i8x8) -> i8x8 {
117+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
118+
|
119+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
120+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
121+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
122+
note: the lint level is defined here
123+
--> $DIR/simd-abi-checks-s390x.rs:15:9
124+
|
125+
LL | #![deny(abi_unsupported_vector_types)]
126+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
127+
128+
Future breakage diagnostic:
129+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
130+
--> $DIR/simd-abi-checks-s390x.rs:52:1
131+
|
132+
LL | extern "C" fn vector_ret(x: &i8x16) -> i8x16 {
133+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
134+
|
135+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
136+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
137+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
138+
note: the lint level is defined here
139+
--> $DIR/simd-abi-checks-s390x.rs:15:9
140+
|
141+
LL | #![deny(abi_unsupported_vector_types)]
142+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
143+
144+
Future breakage diagnostic:
145+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
146+
--> $DIR/simd-abi-checks-s390x.rs:99:1
147+
|
148+
LL | / extern "C" fn vector_transparent_wrapper_ret_small(
149+
LL | | x: &TransparentWrapper<i8x8>,
150+
LL | | ) -> TransparentWrapper<i8x8> {
151+
| |_____________________________^ function defined here
152+
|
153+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
154+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
155+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
156+
note: the lint level is defined here
157+
--> $DIR/simd-abi-checks-s390x.rs:15:9
158+
|
159+
LL | #![deny(abi_unsupported_vector_types)]
160+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
161+
162+
Future breakage diagnostic:
163+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
164+
--> $DIR/simd-abi-checks-s390x.rs:107:1
165+
|
166+
LL | / extern "C" fn vector_transparent_wrapper_ret(
167+
LL | | x: &TransparentWrapper<i8x16>,
168+
LL | | ) -> TransparentWrapper<i8x16> {
169+
| |______________________________^ function defined here
170+
|
171+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
172+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
173+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
174+
note: the lint level is defined here
175+
--> $DIR/simd-abi-checks-s390x.rs:15:9
176+
|
177+
LL | #![deny(abi_unsupported_vector_types)]
178+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
179+
180+
Future breakage diagnostic:
181+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
182+
--> $DIR/simd-abi-checks-s390x.rs:123:1
183+
|
184+
LL | extern "C" fn vector_arg_small(x: i8x8) -> i64 {
185+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
186+
|
187+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
188+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
189+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
190+
note: the lint level is defined here
191+
--> $DIR/simd-abi-checks-s390x.rs:15:9
192+
|
193+
LL | #![deny(abi_unsupported_vector_types)]
194+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
195+
196+
Future breakage diagnostic:
197+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
198+
--> $DIR/simd-abi-checks-s390x.rs:129:1
199+
|
200+
LL | extern "C" fn vector_arg(x: i8x16) -> i64 {
201+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
202+
|
203+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
204+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
205+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
206+
note: the lint level is defined here
207+
--> $DIR/simd-abi-checks-s390x.rs:15:9
208+
|
209+
LL | #![deny(abi_unsupported_vector_types)]
210+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
211+
212+
Future breakage diagnostic:
213+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
214+
--> $DIR/simd-abi-checks-s390x.rs:141:1
215+
|
216+
LL | extern "C" fn vector_wrapper_arg_small(x: Wrapper<i8x8>) -> i64 {
217+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
218+
|
219+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
220+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
221+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
222+
note: the lint level is defined here
223+
--> $DIR/simd-abi-checks-s390x.rs:15:9
224+
|
225+
LL | #![deny(abi_unsupported_vector_types)]
226+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
227+
228+
Future breakage diagnostic:
229+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
230+
--> $DIR/simd-abi-checks-s390x.rs:147:1
231+
|
232+
LL | extern "C" fn vector_wrapper_arg(x: Wrapper<i8x16>) -> i64 {
233+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
234+
|
235+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
236+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
237+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
238+
note: the lint level is defined here
239+
--> $DIR/simd-abi-checks-s390x.rs:15:9
240+
|
241+
LL | #![deny(abi_unsupported_vector_types)]
242+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
243+
244+
Future breakage diagnostic:
245+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
246+
--> $DIR/simd-abi-checks-s390x.rs:159:1
247+
|
248+
LL | extern "C" fn vector_transparent_wrapper_arg_small(x: TransparentWrapper<i8x8>) -> i64 {
249+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
250+
|
251+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
252+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
253+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
254+
note: the lint level is defined here
255+
--> $DIR/simd-abi-checks-s390x.rs:15:9
256+
|
257+
LL | #![deny(abi_unsupported_vector_types)]
258+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
259+
260+
Future breakage diagnostic:
261+
error: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `vector` target feature, which is not enabled
262+
--> $DIR/simd-abi-checks-s390x.rs:165:1
263+
|
264+
LL | extern "C" fn vector_transparent_wrapper_arg(x: TransparentWrapper<i8x16>) -> i64 {
265+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
266+
|
267+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
268+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
269+
= help: consider enabling it globally (`-C target-feature=+vector`) or locally (`#[target_feature(enable="vector")]`)
270+
note: the lint level is defined here
271+
--> $DIR/simd-abi-checks-s390x.rs:15:9
272+
|
273+
LL | #![deny(abi_unsupported_vector_types)]
274+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
275+

‎tests/ui/simd-abi-checks.stderr

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,3 +91,111 @@ LL | unsafe extern "C" fn w(_: Wrapper) {
9191

9292
warning: 9 warnings emitted
9393

94+
Future incompatibility report: Future breakage diagnostic:
95+
warning: this function call uses a SIMD vector type that (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
96+
--> $DIR/simd-abi-checks.rs:55:11
97+
|
98+
LL | f(g());
99+
| ^^^ function called here
100+
|
101+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
102+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
103+
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
104+
= note: `#[warn(abi_unsupported_vector_types)]` on by default
105+
106+
Future breakage diagnostic:
107+
warning: this function call uses a SIMD vector type that (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
108+
--> $DIR/simd-abi-checks.rs:55:9
109+
|
110+
LL | f(g());
111+
| ^^^^^^ function called here
112+
|
113+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
114+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
115+
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
116+
= note: `#[warn(abi_unsupported_vector_types)]` on by default
117+
118+
Future breakage diagnostic:
119+
warning: this function call uses a SIMD vector type that (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
120+
--> $DIR/simd-abi-checks.rs:63:14
121+
|
122+
LL | gavx(favx());
123+
| ^^^^^^ function called here
124+
|
125+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
126+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
127+
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
128+
= note: `#[warn(abi_unsupported_vector_types)]` on by default
129+
130+
Future breakage diagnostic:
131+
warning: this function call uses a SIMD vector type that (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
132+
--> $DIR/simd-abi-checks.rs:63:9
133+
|
134+
LL | gavx(favx());
135+
| ^^^^^^^^^^^^ function called here
136+
|
137+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
138+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
139+
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
140+
= note: `#[warn(abi_unsupported_vector_types)]` on by default
141+
142+
Future breakage diagnostic:
143+
warning: this function call uses a SIMD vector type that (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
144+
--> $DIR/simd-abi-checks.rs:75:19
145+
|
146+
LL | w(Wrapper(g()));
147+
| ^^^ function called here
148+
|
149+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
150+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
151+
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
152+
= note: `#[warn(abi_unsupported_vector_types)]` on by default
153+
154+
Future breakage diagnostic:
155+
warning: this function call uses a SIMD vector type that (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
156+
--> $DIR/simd-abi-checks.rs:75:9
157+
|
158+
LL | w(Wrapper(g()));
159+
| ^^^^^^^^^^^^^^^ function called here
160+
|
161+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
162+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
163+
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
164+
= note: `#[warn(abi_unsupported_vector_types)]` on by default
165+
166+
Future breakage diagnostic:
167+
warning: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `avx` target feature, which is not enabled
168+
--> $DIR/simd-abi-checks.rs:26:1
169+
|
170+
LL | unsafe extern "C" fn g() -> __m256 {
171+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
172+
|
173+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
174+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
175+
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
176+
= note: `#[warn(abi_unsupported_vector_types)]` on by default
177+
178+
Future breakage diagnostic:
179+
warning: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `avx` target feature, which is not enabled
180+
--> $DIR/simd-abi-checks.rs:20:1
181+
|
182+
LL | unsafe extern "C" fn f(_: __m256) {
183+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
184+
|
185+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
186+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
187+
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
188+
= note: `#[warn(abi_unsupported_vector_types)]` on by default
189+
190+
Future breakage diagnostic:
191+
warning: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `avx` target feature, which is not enabled
192+
--> $DIR/simd-abi-checks.rs:14:1
193+
|
194+
LL | unsafe extern "C" fn w(_: Wrapper) {
195+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
196+
|
197+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
198+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
199+
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
200+
= note: `#[warn(abi_unsupported_vector_types)]` on by default
201+

‎tests/ui/sse-abi-checks.stderr

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,15 @@ LL | pub unsafe extern "C" fn f(_: SseVector) {
1111

1212
warning: 1 warning emitted
1313

14+
Future incompatibility report: Future breakage diagnostic:
15+
warning: this function definition uses a SIMD vector type that (with the chosen ABI) requires the `sse` target feature, which is not enabled
16+
--> $DIR/sse-abi-checks.rs:21:1
17+
|
18+
LL | pub unsafe extern "C" fn f(_: SseVector) {
19+
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
20+
|
21+
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
22+
= note: for more information, see issue #116558 <https://github.com/rust-lang/rust/issues/116558>
23+
= help: consider enabling it globally (`-C target-feature=+sse`) or locally (`#[target_feature(enable="sse")]`)
24+
= note: `#[warn(abi_unsupported_vector_types)]` on by default
25+

0 commit comments

Comments
 (0)
Please sign in to comment.