rust/tests/ui
Chris Denton 1ca5e4f1c1
Rollup merge of #134213 - folkertdev:stabilize-naked-functions, r=tgross35,Amanieu,traviscross
Stabilize `naked_functions`

tracking issue: https://github.com/rust-lang/rust/issues/90957
request for stabilization on tracking issue: https://github.com/rust-lang/rust/issues/90957#issuecomment-2539270352
reference PR: https://github.com/rust-lang/reference/pull/1689

# Request for Stabilization

Two years later, we're ready to try this again. Even though this issue is already marked as having passed FCP, given the amount of time that has passed and the changes in implementation strategy, we should follow the process again.

## Summary

The `naked_functions` feature has two main parts: the `#[naked]` function attribute, and the `naked_asm!` macro.

An example of a naked function:

```rust
const THREE: usize = 3;

#[naked]
pub extern "sysv64" fn add_n(number: usize) -> usize {
    // SAFETY: the validity of the used registers
    // is guaranteed according to the "sysv64" ABI
    unsafe {
        core::arch::naked_asm!(
            "add rdi, {}",
            "mov rax, rdi",
            "ret",
            const THREE,
        )
    }
}
```

When the `#[naked]` attribute is applied to a function, the compiler won't emit a [function prologue](https://en.wikipedia.org/wiki/Function_prologue_and_epilogue) or epilogue when generating code for this function. This attribute is analogous to [`__attribute__((naked))`](https://developer.arm.com/documentation/100067/0608/Compiler-specific-Function--Variable--and-Type-Attributes/--attribute----naked---function-attribute) in C. The use of this feature allows the programmer to have precise control over the assembly that is generated for a given function.

The body of a naked function must consist of a single `naked_asm!` invocation, a heavily restricted variant of the `asm!` macro: the only legal operands are `const` and `sym`, and the only legal options are `raw` and `att_syntax`. In lieu of specifying operands, the `naked_asm!` within a naked function relies on the function's calling convention to determine the validity of registers.

## Documentation

The Rust Reference: https://github.com/rust-lang/reference/pull/1689
(Previous PR: https://github.com/rust-lang/reference/pull/1153)

## Tests

* [tests/run-make/naked-symbol-visiblity](https://github.com/rust-lang/rust/tree/master/tests/codegen/naked-fn) verifies that `pub`, `#[no_mangle]` and `#[linkage = "..."]` work correctly for naked functions
* [tests/codegen/naked-fn](https://github.com/rust-lang/rust/tree/master/tests/codegen/naked-fn) has tests for function alignment, use of generics, and validates the exact assembly output on linux, macos, windows and thumb
* [tests/ui/asm/naked-*](https://github.com/rust-lang/rust/tree/master/tests/ui/asm) tests for incompatible attributes, generating errors around incorrect use of `naked_asm!`, etc

## Interaction with other (unstable) features

### [fn_align](https://github.com/rust-lang/rust/issues/82232)

Combining `#[naked]` with `#[repr(align(N))]` works well, and is tested e.g. here

- https://github.com/rust-lang/rust/blob/master/tests/codegen/naked-fn/aligned.rs
- https://github.com/rust-lang/rust/blob/master/tests/codegen/naked-fn/min-function-alignment.rs

It's tested extensively because we do need to explicitly support the `repr(align)` attribute (and make sure we e.g. don't mistake powers of two for number of bytes).

## History

This feature was originally proposed in [RFC 1201](https://github.com/rust-lang/rfcs/pull/1201), filed on 2015-07-10 and accepted on 2016-03-21. Support for this feature was added in [#32410](https://github.com/rust-lang/rust/pull/32410), landing on 2016-03-23. Development languished for several years as it was realized that the semantics given in RFC 1201 were insufficiently specific. To address this, a minimal subset of naked functions was specified by [RFC 2972](https://github.com/rust-lang/rfcs/pull/2972), filed on 2020-08-07 and accepted on 2021-11-16. Prior to the acceptance of RFC 2972, all of the stricter behavior specified by RFC 2972 was implemented as a series of warn-by-default lints that would trigger on existing uses of the `naked` attribute; these lints became hard errors in [#93153](https://github.com/rust-lang/rust/pull/93153) on 2022-01-22. As a result, today RFC 2972 has completely superseded RFC 1201 in describing the semantics of the `naked` attribute.

More recently, the `naked_asm!` macro was added to replace the earlier use of a heavily restricted `asm!` invocation. The `naked_asm!` name is clearer in error messages, and provides a place for documenting the specific requirements of inline assembly in naked functions.

The implementation strategy was changed to emitting a global assembly block. In effect, an extern function

```rust
extern "C" fn foo() {
    core::arch::naked_asm!("ret")
}
```

is emitted as something similar to

```rust
core::arch::global_asm!(
    "foo:",
    "ret"
);

extern "C" {
    fn foo();
}
```

The codegen approach was chosen over the llvm naked function attribute because:

- the rust compiler can guarantee the behavior (no sneaky additional instructions, no inlining, etc.)
- behavior is the same on all backends (llvm, cranelift, gcc, etc)

Finally, there is now an allow list of compatible attributes on naked functions, so that e.g. `#[inline]` is rejected with an error. The `#[target_feature]` attribute on naked functions was later made separately unstable, because implementing it is complex and we did not want to block naked functions themselves on how target features work on them. See also https://github.com/rust-lang/rust/issues/138568.

relevant PRs for these recent changes

- https://github.com/rust-lang/rust/pull/127853
- https://github.com/rust-lang/rust/pull/128651
- https://github.com/rust-lang/rust/pull/128004
- https://github.com/rust-lang/rust/pull/138570
-
### Various historical notes

#### `noreturn`
[RFC 2972](https://github.com/rust-lang/rfcs/blob/master/text/2972-constrained-naked.md) mentions that naked functions

> must have a body which contains only a single asm!() statement which:
> iii. must contain the noreturn option.

Instead of `asm!`, the current implementation mandates that the body contain a single `naked_asm!` statement. The `naked_asm!` macro is a heavily restricted version of the `asm!` macro, making it easier to talk about and document the rules of assembly in naked functions and give dedicated error messages.

For `naked_asm!`, the behavior of the `asm!`'s `noreturn` option is implicit. The `noreturn` option means that it is UB for control flow to fall through the end of the assembly block. With `asm!`, this option is usually used for blocks that diverge (and thus have no return and can be typed as `!`). With `naked_asm!`, the intent is different: usually naked funtions do return, but they must do so from within the assembly block. The `noreturn` option was used so that the compiler would not itself also insert a `ret` instruction at the very end.

#### padding / `ud2`

A `naked_asm!` block that violates the safety assumption that control flow must not fall through the end of the assembly block is UB. Because no return instruction is emitted, whatever bytes follow the naked function will be executed, resulting in truly undefined behavior. There has been discussion whether rustc should emit an invalid instruction (e.g. `ud2`  on x86) after the `naked_asm!` block to at least fail early in the case of an invalid `naked_asm!`. It was however decided that it is more useful to guarantee that `#[naked]` functions NEVER contain any instructions besides those in the `naked_asm!` block.

# unresolved questions

None

r? ``@Amanieu``

I've validated the tests on x86_64 and aarch64
2025-04-21 18:53:15 +00:00
..
abi Replace infallible name_or_empty methods with fallible name methods. 2025-04-17 09:50:52 +10:00
alloc-error Do not suggest using -Zmacro-backtrace for builtin macros 2025-03-14 19:50:03 +00:00
allocator compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
annotate-snippet Update tests to use new proc-macro header 2024-11-27 07:18:25 -08:00
anon-params UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
argfile Remove the -test suffix from normalize directives 2024-12-27 19:58:16 +11:00
argument-suggestions Cleaned up 4 tests in tests/ui/issues 2025-04-19 01:10:26 -06:00
array-slice-vec UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
asm stabilize naked_functions 2025-04-20 11:18:38 +02:00
associated-consts UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
associated-inherent-types UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
associated-item Rollup merge of #137631 - TaKO8Ki:issue-137508, r=compiler-errors 2025-02-26 19:03:56 +01:00
associated-type-bounds UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
associated-types Rollup merge of #138632 - clubby789:stabilize-cfg-boolean-lit, r=davidtwco,Urgau,traviscross 2025-04-17 06:25:15 +02:00
async-await Auto merge of #139114 - m-ou-se:super-let-pin, r=davidtwco 2025-04-19 08:01:53 +00:00
attributes Rollup merge of #139615 - nnethercote:rm-name_or_empty, r=jdonszelmann 2025-04-18 05:16:29 +02:00
auto-traits Rollup merge of #138632 - clubby789:stabilize-cfg-boolean-lit, r=davidtwco,Urgau,traviscross 2025-04-17 06:25:15 +02:00
autodiff emit a better error message for using the macro incorrectly 2025-04-08 21:54:34 -04:00
autoref-autoderef tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
auxiliary do not implement unsafe auto traits for types with unsafe fields 2024-12-05 23:52:21 +00:00
backtrace tests: use needs-subprocess instead of ignore-{wasm32,emscripten,sgx} 2025-01-23 20:51:29 +08:00
bench tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
binding Remove some unnecessary parens in assert! conditions 2025-02-06 22:28:44 +00:00
binop compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
blind Accurate use rename suggestion span 2024-07-18 00:00:04 +00:00
block-result Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
bootstrap tests: use compiletest-ignore-dir for bootstrap self-tests 2025-04-14 15:28:41 +08:00
borrowck tests: use //@ ignore-auxiliary with backlinked primary test file 2025-04-17 19:45:28 +08:00
box tests: use needs-threads instead of ignore-emscripten 2025-01-23 20:51:29 +08:00
btreemap Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
builtin-superkinds Mention type parameter in more cases and don't suggest ~const bound already there 2024-12-07 21:37:13 +00:00
c-variadic compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
cast Rollup merge of #138962 - xizheyin:issue-138836, r=compiler-errors 2025-04-13 17:37:52 -04:00
cfg Rollup merge of #138632 - clubby789:stabilize-cfg-boolean-lit, r=davidtwco,Urgau,traviscross 2025-04-17 06:25:15 +02:00
check-cfg Auto merge of #139949 - matthiaskrgr:rollup-pxc5tsx, r=matthiaskrgr 2025-04-17 11:21:54 +00:00
closure-expected-type
closure_context
closures Auto merge of #139577 - davidtwco:sizedness-go-vroom, r=oli-obk 2025-04-14 19:54:27 +00:00
cmse-nonsecure Bless UI tests 2025-03-03 08:52:07 +01:00
codegen Cleaned up 4 tests in tests/ui/issues 2025-04-19 01:10:26 -06:00
codemap_tests Rollup merge of #139967 - jieyouxu:auxiliary, r=wesleywiser 2025-04-17 21:53:25 +02:00
coercion Normalize ADT fields in find_tails_for_unsizing 2025-04-14 16:51:00 +00:00
coherence Do not rely on type_var_origin in OrphanCheckErr::NonLocalInputType 2025-03-20 02:17:14 +00:00
coinduction
command Move #![crate_type] UI tests into attributes directory 2025-02-15 03:41:07 +01:00
compare-method Trim suggestion parts to the subset that is purely additive 2025-02-14 00:44:10 -08:00
compiletest-self-test compiletest: Trim whitespace from environment variable names 2025-04-08 21:31:53 +10:00
conditional-compilation Rollup merge of #139967 - jieyouxu:auxiliary, r=wesleywiser 2025-04-17 21:53:25 +02:00
confuse-field-and-method Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
const-generics Explicitly annotate edition for unpretty=expanded and unpretty=hir tests 2025-04-16 11:10:10 +02:00
const-ptr compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
const_prop Tweak unevaluated constant in pattern error 2024-12-04 20:29:35 +00:00
consts Rollup merge of #138632 - clubby789:stabilize-cfg-boolean-lit, r=davidtwco,Urgau,traviscross 2025-04-17 06:25:15 +02:00
contracts Fix unreachable expression warning 2025-04-08 10:46:31 -07:00
coroutine Auto merge of #139114 - m-ou-se:super-let-pin, r=davidtwco 2025-04-19 08:01:53 +00:00
coverage-attr Factor some code out of AstValidator::visit_items. 2025-04-02 09:16:34 +11:00
crate-loading tests: rebless some tests as a side-effect of TEST_BUILD_DIR changes 2025-03-04 00:21:02 +08:00
cross tests: use //@ ignore-auxiliary with backlinked primary test file 2025-04-17 19:45:28 +08:00
cross-crate Allow fn pointers comparisons lint in UI tests 2024-12-02 18:43:37 +01:00
custom_test_frameworks Address review comments. 2025-04-01 16:07:23 +11:00
cycle-trait
dataflow_const_prop dataflow_const_prop: do not eval a ptr address in SwitchInt 2024-12-09 21:06:29 +08:00
debuginfo Stabilize -Zdwarf-version as -Cdwarf-version 2025-04-14 21:26:41 -05:00
definition-reachable
delegation Rollup merge of #138632 - clubby789:stabilize-cfg-boolean-lit, r=davidtwco,Urgau,traviscross 2025-04-17 06:25:15 +02:00
dep-graph compiletest: Support matching on diagnostics without a span 2025-03-25 17:33:09 +03:00
deprecation replace //@ compile-flags: --edition with //@ edition 2025-04-10 09:56:37 +02:00
deref-patterns UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
derived-errors Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
derives Do not suggest using -Zmacro-backtrace for builtin macros 2025-03-14 19:50:03 +00:00
deriving Explicitly annotate edition for unpretty=expanded and unpretty=hir tests 2025-04-16 11:10:10 +02:00
dest-prop
destructuring-assignment More sophisticated span trimming 2025-02-21 00:41:17 +00:00
diagnostic-flags Remove attribute #[rustc_error] 2025-03-30 01:32:21 +03:00
diagnostic-width Do not suggest using -Zmacro-backtrace for builtin macros 2025-03-14 19:50:03 +00:00
diagnostic_namespace Rollup merge of #139091 - mejrs:format, r=compiler-errors 2025-04-19 15:09:33 +00:00
did_you_mean Auto merge of #139940 - matthiaskrgr:rollup-rd4d3fn, r=matthiaskrgr 2025-04-17 04:52:34 +00:00
directory_ownership tests: remove unused auxiliaries under tests/ui/directory_ownership/ 2025-04-17 19:45:28 +08:00
disallowed-deconstructing
dollar-crate
drop Use delayed bug for normalization errors in drop elaboration 2025-04-11 16:31:28 +00:00
drop-bounds
dropck Don't immediately panic if dropck fails without returning errors 2025-02-24 16:41:18 +00:00
dst Delete tuple unsizing 2025-02-27 10:26:33 +00:00
duplicate UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
dyn-compatibility UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
dyn-drop
dyn-keyword Fix suggestion when there are generics, inline some things 2025-03-08 20:44:57 +00:00
dyn-star UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
dynamically-sized-types Delete tuple unsizing 2025-02-27 10:26:33 +00:00
editions UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
empty Trim suggestion parts to the subset that is purely additive 2025-02-14 00:44:10 -08:00
entry-point compiletest: Support matching on diagnostics without a span 2025-03-25 17:33:09 +03:00
enum Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
enum-discriminant UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
env-macro Do not suggest using -Zmacro-backtrace for builtin macros 2025-03-14 19:50:03 +00:00
ergonomic-clones Rollup merge of #138628 - spastorino:add-more-ergonomic-clone-tests, r=nikomatsakis 2025-04-09 20:23:09 +02:00
error-codes UI tests: migrate remaining compile time error-patterns to line annotations 2025-04-13 21:48:53 +03:00
error-emitter Fix multiline span start special case 2025-03-07 17:55:08 +00:00
errors ignore aix for tests/ui/erros/pic-linker.rs 2025-04-16 19:26:26 -04:00
explicit Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
explicit-tail-calls Do not suggest using -Zmacro-backtrace for builtin macros 2025-03-14 19:50:03 +00:00
expr Use cfg(false) in UI tests 2025-04-03 21:41:58 +00:00
extern UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
extern-flag UI tests: migrate remaining compile time error-patterns to line annotations 2025-04-13 21:48:53 +03:00
feature-gates stabilize naked_functions 2025-04-20 11:18:38 +02:00
ffi-attrs error on unsafe attributes in pre-2024 editions 2025-04-13 01:22:59 +02:00
float move f16/f128 const fn under f16/f128 feature gate 2024-10-05 10:13:18 +02:00
fmt compiletest: Support matching on diagnostics without a span 2025-03-25 17:33:09 +03:00
fn compiletest: Make SUGGESTION annotations viral 2025-04-10 23:48:57 +03:00
fn-main
for Tweak multispan rendering 2024-12-12 23:36:27 +00:00
for-loop-while Remove some unnecessary parens in assert! conditions 2025-02-06 22:28:44 +00:00
force-inlining Rollup merge of #137599 - davidtwco:use-minicore-more, r=jieyouxu 2025-02-28 22:29:52 +08:00
foreign UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
fully-qualified-type
function-pointer Remove a duplicated check that doesn't do anything anymore. 2024-12-19 10:56:31 +00:00
functional-struct-update Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
functions-closures tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
generic-associated-types Rollup merge of #139854 - fmease:modern-diag-for-lt-in-ty, r=davidtwco 2025-04-17 00:16:22 +02:00
generic-const-items Improve AssocItem::descr. 2025-04-11 11:03:08 +10:00
generics Remove old diagnostic notes for type ascription syntax 2025-04-16 20:24:55 +10:00
half-open-range-patterns Rollup merge of #138632 - clubby789:stabilize-cfg-boolean-lit, r=davidtwco,Urgau,traviscross 2025-04-17 06:25:15 +02:00
hashmap Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
hello_world
higher-ranked Auto merge of #139578 - ferrocene:pa-compiletest-edition, r=jieyouxu 2025-04-11 10:53:45 +00:00
hygiene hygiene: Rename semi-transparent to semi-opaque 2025-03-31 15:41:48 +03:00
illegal-sized-bound UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
impl-header-lifetime-elision
impl-trait Rollup merge of #139854 - fmease:modern-diag-for-lt-in-ty, r=davidtwco 2025-04-17 00:16:22 +02:00
implied-bounds Auto merge of #139552 - matthiaskrgr:rollup-b194mk8, r=matthiaskrgr 2025-04-09 05:39:18 +00:00
imports replace //@ compile-flags: --edition with //@ edition 2025-04-10 09:56:37 +02:00
include-macros Do not suggest using -Zmacro-backtrace for builtin macros 2025-03-14 19:50:03 +00:00
incoherent-inherent-impls chore: fix typos 2024-12-31 23:46:39 +08:00
indexing Implement SliceIndex for ByteStr 2025-03-11 20:26:10 -07:00
inference Remove MaybeForgetReturn suggestion 2025-02-22 00:04:26 +00:00
infinite compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
inherent-impls-overlap-check Update tests to use new proc-macro header 2024-11-27 07:18:25 -08:00
inline-const UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
instrument-coverage Update the minimum external LLVM to 19 2025-04-05 11:44:38 -07:00
instrument-xray compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
interior-mutability Remove detail from label/note that is already available in other note 2024-10-29 16:26:57 +00:00
internal compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
internal-lints Remove rustc::existing_doc_keyword lint. 2024-12-17 13:56:10 +11:00
intrinsics replace some #[rustc_intrinsic] usage with use of the libcore declarations 2025-04-16 14:48:20 +02:00
invalid UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
invalid-compile-flags Specify --print info=file syntax in --help 2025-04-14 14:52:27 +01:00
invalid-module-declaration compiletest: Support matching on diagnostics without a span 2025-03-25 17:33:09 +03:00
invalid-self-argument
io-checks compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
issues Rollup merge of #139995 - spencer3035:clean-ui-tests-4-of-n, r=jieyouxu 2025-04-19 15:09:36 +00:00
iterators UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
json tests: rebless some tests as a side-effect of TEST_BUILD_DIR changes 2025-03-04 00:21:02 +08:00
keyword Reword "crate not found" resolve message 2025-01-24 01:19:50 +00:00
kindck Remove dyn_compatible_for_dispatch 2025-02-24 18:48:40 +00:00
label replace //@ compile-flags: --edition with //@ edition 2025-04-10 09:56:37 +02:00
lang-items compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
late-bound-lifetimes Revert suggestion verbosity change 2024-07-22 22:51:53 +00:00
layout UI tests: migrate remaining compile time error-patterns to line annotations 2025-04-13 21:48:53 +03:00
lazy-type-alias change definitely non-productive cycles to error 2025-03-05 10:06:43 +01:00
lazy-type-alias-impl-trait Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
let-else replace //@ compile-flags: --edition with //@ edition 2025-04-10 09:56:37 +02:00
lexer Use cfg(false) in UI tests 2025-04-03 21:41:58 +00:00
lifetimes Auto merge of #139578 - ferrocene:pa-compiletest-edition, r=jieyouxu 2025-04-11 10:53:45 +00:00
limits UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
link-native-libs Auto merge of #139949 - matthiaskrgr:rollup-pxc5tsx, r=matthiaskrgr 2025-04-17 11:21:54 +00:00
linkage-attr tests: use specific-purpose needs-crate-type over ignore-$target directives 2025-04-10 12:52:08 +08:00
linking Move link-self-contained-consistency test to a more reasonable location 2025-04-03 15:41:38 +02:00
lint stabilize naked_functions 2025-04-20 11:18:38 +02:00
liveness omit unused args warnings for intrinsics without body 2025-01-23 14:32:21 -05:00
loops If a label is placed on the block of a loop instead of the header, suggest moving it to the header. 2025-03-17 01:59:37 -05:00
lowering Make synthetic RPITIT assoc ty name handling more rigorous. 2025-03-07 20:59:45 +11:00
lto Stabilize -Zdwarf-version as -Cdwarf-version 2025-04-14 21:26:41 -05:00
lub-glb Tweak multispan rendering 2024-12-12 23:36:27 +00:00
macro_backtrace
macros Rollup merge of #139967 - jieyouxu:auxiliary, r=wesleywiser 2025-04-17 21:53:25 +02:00
malformed compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
marker_trait_attr
match Explicitly annotate edition for unpretty=expanded and unpretty=hir tests 2025-04-16 11:10:10 +02:00
meta Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
methods UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
mir replace //@ compile-flags: --edition with //@ edition 2025-04-10 09:56:37 +02:00
mir-dataflow Improve borrowck_graphviz_* documentation. 2025-04-16 08:57:15 +10:00
mismatched_types Report higher-ranked trait error when higher-ranked projection goal fails in new solver 2025-04-09 17:53:32 +00:00
missing UI tests: migrate remaining compile time error-patterns to line annotations 2025-04-13 21:48:53 +03:00
missing-trait-bounds Use trait name instead of full constraint in suggestion message 2024-12-07 21:29:58 +00:00
missing_non_modrs_mod tests: use //@ ignore-auxiliary with backlinked primary test file 2025-04-17 19:45:28 +08:00
modules tests: use //@ ignore-auxiliary with backlinked primary test file 2025-04-17 19:45:28 +08:00
modules_and_files_visibility tests: use //@ ignore-auxiliary with backlinked primary test file 2025-04-17 19:45:28 +08:00
moves Auto merge of #139555 - petrochenkov:errkind-ann, r=jieyouxu 2025-04-09 02:19:37 +00:00
mut Tweak &mut self suggestion span 2025-01-28 19:35:51 +00:00
namespace Trim suggestion parts to the subset that is purely additive 2025-02-14 00:44:10 -08:00
never_type UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
new-range implement unstable new_range feature 2025-01-30 21:33:11 -07:00
nll UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
no_std UI tests: migrate remaining compile time error-patterns to line annotations 2025-04-13 21:48:53 +03:00
non_modrs_mods tests: use //@ ignore-auxiliary with backlinked primary test file 2025-04-17 19:45:28 +08:00
non_modrs_mods_and_inline_mods tests: use //@ ignore-auxiliary with backlinked primary test file 2025-04-17 19:45:28 +08:00
not-panic Remove detail from label/note that is already available in other note 2024-10-29 16:26:57 +00:00
numbers-arithmetic Rollup merge of #139967 - jieyouxu:auxiliary, r=wesleywiser 2025-04-17 21:53:25 +02:00
numeric Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
object-lifetime tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
obsolete-in-place More sophisticated span trimming 2025-02-21 00:41:17 +00:00
offset-of UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
on-unimplemented Remove rustc_on_unimplemented on impl tests 2025-04-14 00:12:37 +02:00
operator-recovery Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
or-patterns Auto merge of #139949 - matthiaskrgr:rollup-pxc5tsx, r=matthiaskrgr 2025-04-17 11:21:54 +00:00
overloaded tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
packed UI tests: migrate remaining compile time error-patterns to line annotations 2025-04-13 21:48:53 +03:00
panic-handler UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
panic-runtime Rollup merge of #139618 - petrochenkov:virsugg, r=jieyouxu 2025-04-13 11:48:17 +00:00
panics compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
parallel-rustc compiletest: Stricter parsing for diagnostic kinds 2025-04-07 19:13:31 +03:00
parser Rollup merge of #139967 - jieyouxu:auxiliary, r=wesleywiser 2025-04-17 21:53:25 +02:00
patchable-function-entry compiletest: Support matching on diagnostics without a span 2025-03-25 17:33:09 +03:00
pattern Rollup merge of #139042 - compiler-errors:do-not-optimize-switchint, r=saethlin 2025-04-19 19:30:46 +00:00
pin-macro Update tests. 2025-04-15 11:14:23 +02:00
precondition-checks tests: ensure disabled tests have a reason 2025-04-12 15:24:25 +08:00
print-request UI tests: migrate remaining compile time error-patterns to line annotations 2025-04-13 21:48:53 +03:00
print_type_sizes remove support for the #[start] attribute 2025-01-21 06:59:15 -07:00
privacy UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
proc-macro Rollup merge of #139967 - jieyouxu:auxiliary, r=wesleywiser 2025-04-17 21:53:25 +02:00
process Test Command::current_dir with verbatim path 2025-03-24 18:57:22 +00:00
process-termination
ptr_ops
pub UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
qualified Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
query-system depth limit eval_to_const_value_raw 2025-01-06 08:54:27 +01:00
range Do not suggest using -Zmacro-backtrace for builtin macros 2025-03-14 19:50:03 +00:00
raw-ref-op Auto merge of #134294 - matthiaskrgr:rollup-anh6io8, r=matthiaskrgr 2024-12-14 06:44:05 +00:00
reachable Consistent with treating Ctor Call as Struct in liveness analysis 2025-04-14 14:29:14 +08:00
recursion tests: remove explicit long type filename hash normalization from some ui tests 2025-03-04 00:21:02 +08:00
recursion_limit
regions UI tests: migrate remaining compile time error-patterns to line annotations 2025-04-13 21:48:53 +03:00
repeat-expr Bless 2025-02-27 20:02:25 +00:00
repr UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
reserved
resolve Rollup merge of #139127 - compiler-errors:prim-ty-hack, r=oli-obk 2025-04-14 18:15:30 +02:00
return compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
rfcs stabilize naked_functions 2025-04-20 11:18:38 +02:00
rmeta compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
runtime tests: use //@ ignore-auxiliary with backlinked primary test file 2025-04-17 19:45:28 +08:00
rust-2018 UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
rust-2021 UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
rust-2024 UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
rustc-env compiletest: Support matching on diagnostics without a span 2025-03-25 17:33:09 +03:00
rustdoc Check attrs: Don't try to retrieve the name of list stems 2025-03-19 23:29:35 +01:00
sanitizer Auto merge of #139578 - ferrocene:pa-compiletest-edition, r=jieyouxu 2025-04-11 10:53:45 +00:00
self UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
sepcomp tests: use needs-threads instead of ignore-emscripten 2025-01-23 20:51:29 +08:00
shadowed
shell-argfiles
simd Rollup merge of #137953 - RalfJung:simd-intrinsic-masks, r=WaffleLapkin 2025-04-20 13:02:48 +00:00
single-use-lifetime
sized Only prefer Sized candidates, and only if they certainly hold 2025-03-13 21:12:07 +00:00
span Remove attribute #[rustc_error] 2025-03-30 01:32:21 +03:00
specialization Use cfg(false) in UI tests 2025-04-03 21:41:58 +00:00
stability-attribute UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
stable-mir-print Encode synthetic by-move coroutine body with a different DefPathData 2025-03-30 22:53:21 +00:00
stack-protector compiletest: Support matching on diagnostics without a span 2025-03-25 17:33:09 +03:00
static UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
statics Use def_path_str for def id arg in UnsupportedOpInfo 2025-03-20 03:22:46 +00:00
stats Implement super let. 2025-04-04 09:44:19 +02:00
std Specify a concrete stack size in channel tests 2025-03-19 12:55:02 -04:00
stdlib-unit-tests Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
str Implement SliceIndex for ByteStr 2025-03-11 20:26:10 -07:00
structs UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
structs-enums Rollup merge of #135778 - ferrocene:ja-gh135777, r=workingjubilee 2025-02-14 16:23:27 +01:00
suggestions Auto merge of #139949 - matthiaskrgr:rollup-pxc5tsx, r=matthiaskrgr 2025-04-17 11:21:54 +00:00
svh Remove the -test suffix from normalize directives 2024-12-27 19:58:16 +11:00
symbol-mangling-version compiletest: Support matching on diagnostics without a span 2025-03-25 17:33:09 +03:00
symbol-names compiler: compare and hash ExternAbi like its string 2025-02-11 20:18:01 -08:00
sync Remove detail from label/note that is already available in other note 2024-10-29 16:26:57 +00:00
target-feature UI tests: migrate remaining compile time error-patterns to line annotations 2025-04-13 21:48:53 +03:00
target_modifiers Rollup merge of #138483 - azhogin:azhogin/target-modifiers-bool-fix, r=fee1-dead 2025-03-26 19:40:27 +11:00
test-attrs Adjust test directives 2025-04-14 10:36:13 +08:00
thir-print Eliminate PatKind::Path 2025-01-29 15:45:13 +00:00
thread-local Mark test as only-unix. 2025-03-27 14:11:11 +01:00
threads-sendsync Enable more tests on Windows 2025-02-03 10:39:32 -05:00
tool-attributes Do not visit whole crate to compute lints_that_dont_need_to_run. 2025-04-04 12:37:38 +00:00
track-diagnostics compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
trait-bounds Improve presentation of closure signature mismatch from Fn trait goal 2025-04-08 05:54:57 +00:00
traits Don't assemble non-env/bound candidates if projection is rigid 2025-04-18 01:44:06 +00:00
transmutability Auto merge of #139552 - matthiaskrgr:rollup-b194mk8, r=matthiaskrgr 2025-04-09 05:39:18 +00:00
transmute Remove the -test suffix from normalize directives 2024-12-27 19:58:16 +11:00
treat-err-as-bug compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
trivial-bounds Improve the impl and diag output of lint type_alias_bounds 2024-07-23 01:48:03 +02:00
try-block replace //@ compile-flags: --edition with //@ edition 2025-04-10 09:56:37 +02:00
try-trait Point at type that doesn't implement needed trait 2025-02-21 18:30:07 +00:00
tuple Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
type Remove old diagnostic notes for type ascription syntax 2025-04-16 20:24:55 +10:00
type-alias Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
type-alias-enum-variants More sophisticated span trimming 2025-02-21 00:41:17 +00:00
type-alias-impl-trait Rollup merge of #139902 - lcnr:no-opaque-cast-projection, r=oli-obk 2025-04-17 17:40:28 +02:00
type-inference In "specify type" suggestion, skip type params that are already known 2025-02-03 19:51:20 +00:00
typeck compiletest: Trim the value of dont-require-annotations 2025-04-10 23:48:57 +03:00
typeof Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
ufcs Use final path segment for diagnostic 2025-03-05 23:06:54 +00:00
unboxed-closures UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
underscore-imports Update tests to use new proc-macro header 2024-11-27 07:18:25 -08:00
underscore-lifetime Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
uniform-paths
uninhabited UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
union Do not suggest using -Zmacro-backtrace for builtin macros 2025-03-14 19:50:03 +00:00
unknown-unstable-lints UI tests: migrate remaining compile time error-patterns to line annotations 2025-04-13 21:48:53 +03:00
unop Mention type parameter in more cases and don't suggest ~const bound already there 2024-12-07 21:37:13 +00:00
unpretty Explicitly annotate edition for unpretty=expanded and unpretty=hir tests 2025-04-16 11:10:10 +02:00
unresolved Note potential but private items in show_candidates 2025-03-22 11:41:42 +08:00
unsafe UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
unsafe-binders UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
unsafe-fields Do not require that unsafe fields lack drop glue 2025-02-28 16:32:06 +00:00
unsized Delete tuple unsizing 2025-02-27 10:26:33 +00:00
unsized-locals UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
unused-crate-deps
unwind-abis
use replace //@ compile-flags: --edition with //@ edition 2025-04-10 09:56:37 +02:00
variance UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
variants Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
version
warnings
wasm Use cfg(false) in UI tests 2025-04-03 21:41:58 +00:00
wf UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
where-clauses Implment #[cfg] and #[cfg_attr] in where clauses 2025-03-01 22:02:46 +08:00
while Quickfix //@ check-pass is enough 2025-02-04 21:42:43 +05:30
windows-subsystem compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
zero-sized
.gitattributes
amdgpu-require-explicit-cpu.nocpu.stderr Add amdgpu target 2025-01-31 09:59:41 +01:00
amdgpu-require-explicit-cpu.rs compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
augmented-assignments-feature-gate-cross.rs
augmented-assignments-rpass.rs
augmented-assignments.rs UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
augmented-assignments.stderr Peel off explicit (or implicit) deref before suggesting clone on move error in borrowck 2024-07-26 14:41:56 -04:00
auto-instantiate.rs
auto-ref-slice-plus-ref.rs
auto-ref-slice-plus-ref.stderr
autoderef-full-lval.rs
autoderef-full-lval.stderr
bare-fn-implements-fn-mut.rs
bare-static-string.rs
big-literals.rs
bind-by-move.rs
bitwise.rs
bogus-tag.rs
bogus-tag.stderr
borrow-by-val-method-receiver.rs
bounds-lifetime.rs
bounds-lifetime.stderr
break-diverging-value.rs
break-diverging-value.stderr
builtin-clone-unwind.rs
can-copy-pod.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
cancel-clean-via-immediate-rvalue-ref.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
cannot-mutate-captured-non-mut-var.rs
cannot-mutate-captured-non-mut-var.stderr More accurate mutability suggestion 2024-07-04 05:36:34 +00:00
capture1.rs compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
capture1.stderr compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
catch-unwind-bang.rs
cenum_impl_drop_cast.rs Make cenum_impl_drop_cast a hard error 2025-01-23 16:45:19 -08:00
cenum_impl_drop_cast.stderr Make cenum_impl_drop_cast a hard error 2025-01-23 16:45:19 -08:00
cfguard-run.rs
char.rs
class-cast-to-trait.rs
class-cast-to-trait.stderr
class-method-missing.rs
class-method-missing.stderr
cleanup-rvalue-for-scope.rs
cleanup-rvalue-scopes-cf.rs
cleanup-rvalue-scopes-cf.stderr
cleanup-rvalue-scopes.rs
cleanup-rvalue-temp-during-incomplete-alloc.rs tests: use needs-threads instead of ignore-emscripten 2025-01-23 20:51:29 +08:00
cleanup-shortcircuit.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
close-over-big-then-small-data.rs
command-line-diagnostics.rs
command-line-diagnostics.stderr Better span for "make binding mutable" suggestion 2024-07-04 02:02:21 +00:00
complex.rs
conservative_impl_trait.rs
conservative_impl_trait.stderr
constructor-lifetime-args.rs
constructor-lifetime-args.stderr Revert suggestion verbosity change 2024-07-22 22:51:53 +00:00
copy-a-resource.rs
copy-a-resource.stderr
crate-leading-sep.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
crate-method-reexport-grrrrrrr.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
crate-name-attr-used.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
crate-name-mismatch.rs
crate-name-mismatch.stderr
crate_type_flag.rs compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
crate_type_flag.stderr Show valid crate types when the user passes unknown --crate-type value 2025-03-14 15:53:42 +08:00
custom-attribute-multisegment.rs
custom-attribute-multisegment.stderr
custom-test-frameworks-simple.rs
custom_attribute.rs
custom_attribute.stderr
deduplicate-diagnostics.deduplicate.stderr
deduplicate-diagnostics.duplicate.stderr Do not visit whole crate to compute lints_that_dont_need_to_run. 2025-04-04 12:37:38 +00:00
deduplicate-diagnostics.rs Do not visit whole crate to compute lints_that_dont_need_to_run. 2025-04-04 12:37:38 +00:00
deep.rs
default-method-parsing.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
default-method-simple.rs
defaults-well-formedness.rs
deprecation-in-force-unstable.rs
deref-non-pointer.rs
deref-non-pointer.stderr Make E0614 a structured error 2025-02-25 16:56:04 +00:00
deref-rc.rs
deref.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
derive-uninhabited-enum-38885.rs
derive-uninhabited-enum-38885.stderr
destructure-trait-ref.rs
destructure-trait-ref.stderr
diverging-fallback-method-chain.rs
diverging-fallback-option.rs
diverging-fn-tail-35849.rs
diverging-fn-tail-35849.stderr
double-ref.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
double-type-import.rs
double-type-import.stderr
early-ret-binop-add.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
elide-errors-on-mismatched-tuple.rs
elide-errors-on-mismatched-tuple.stderr
elided-test.rs compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
elided-test.stderr compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
else-if.rs
empty-allocation-non-null.rs
empty-allocation-rvalue-non-null.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
empty-type-parameter-list.rs
empty-type-parameter-list.stderr
error-festival.rs
error-festival.stderr Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
error-should-say-copy-not-pod.rs
error-should-say-copy-not-pod.stderr
exclusive-drop-and-copy.rs
exclusive-drop-and-copy.stderr Do not suggest using -Zmacro-backtrace for builtin macros 2025-03-14 19:50:03 +00:00
explain.rs
explain.stdout
explicit-i-suffix.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
explore-issue-38412.rs stability: remove skip_stability_check_due_to_privacy 2024-11-18 08:07:46 +01:00
explore-issue-38412.stderr use backticks instead of single quotes when reporting "use of unstable library feature" 2024-11-03 13:55:52 -08:00
ext-expand-inner-exprs.rs
ext-nonexistent.rs compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
ext-nonexistent.stderr compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
fact.rs
fail-simple.rs Tweak more warnings. 2024-10-28 14:20:28 +11:00
fail-simple.stderr Tweak more warnings. 2024-10-28 14:20:28 +11:00
filter-block-view-items.rs Use cfg(false) in UI tests 2025-04-03 21:41:58 +00:00
format-no-std.rs remove support for the #[start] attribute 2025-01-21 06:59:15 -07:00
fun-indirect-call.rs
future-incompatible-lint-group.rs
future-incompatible-lint-group.stderr
global-scope.rs
hello.rs Update more 2024 tests to remove -Zunstable-options 2024-11-28 14:32:45 -08:00
illegal-ufcs-drop.fixed
illegal-ufcs-drop.rs
illegal-ufcs-drop.stderr
impl-inherent-non-conflict.rs
impl-not-adjacent-to-type.rs
impl-privacy-xc-1.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
impl-unused-rps-in-assoc-type.rs
impl-unused-rps-in-assoc-type.stderr
impl-unused-tps-inherent.rs
impl-unused-tps-inherent.stderr
impl-unused-tps.rs stabilize -Znext-solver=coherence 2024-10-15 13:11:00 +02:00
impl-unused-tps.stderr Don't assemble non-env/bound candidates if projection is rigid 2025-04-18 01:44:06 +00:00
implicit-method-bind.rs
implicit-method-bind.stderr
inline-disallow-on-variant.rs
inline-disallow-on-variant.stderr
inlined-main.rs
inner-attrs-on-impl.rs Use cfg(false) in UI tests 2025-04-03 21:41:58 +00:00
inner-module.rs
inner-static-type-parameter.rs
inner-static-type-parameter.stderr
inner-static.rs
integral-indexing.rs
integral-indexing.stderr Implement SliceIndex for ByteStr 2025-03-11 20:26:10 -07:00
integral-variable-unification-error.rs
integral-variable-unification-error.stderr
invalid_dispatch_from_dyn_impls.rs UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
invalid_dispatch_from_dyn_impls.stderr Consolidate and rework CoercePointee and DispatchFromDyn errors 2025-02-24 19:34:54 +00:00
issue-11881.rs
issue-13560.rs
issue-15924.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
issue-16822.rs
issue-18502.rs
issue-24106.rs
issue-76387-llvm-miscompile.rs
issues-71798.rs
issues-71798.stderr
item-name-overload.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
kinds-in-metadata.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
kinds-of-primitive-impl.rs
kinds-of-primitive-impl.stderr
last-use-in-block.rs
last-use-in-cap-clause.rs
last-use-is-capture.rs
lazy-and-or.rs
lexical-scopes.rs
lexical-scopes.stderr
lexical-scoping.rs
link-section.rs Update tests for hidden references to mutable static 2024-09-13 14:10:56 +03:00
list.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
log-err-phi.rs
log-knows-the-names-of-variants.rs
log-poly.rs
logging-only-prints-once.rs Enable more tests on Windows 2025-02-03 10:39:32 -05:00
loud_ui.rs
max-min-classes.rs
maximal_mir_to_hir_coverage.rs
maybe-bounds.rs
maybe-bounds.stderr Support ?Trait bounds in supertraits and dyn Trait under a feature gate 2024-07-25 20:53:33 +03:00
method-output-diff-issue-127263.rs show unit output when there is only output diff in diagnostics 2024-07-06 21:00:30 +08:00
method-output-diff-issue-127263.stderr show unit output when there is only output diff in diagnostics 2024-07-06 21:00:30 +08:00
minus-string.rs compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
minus-string.stderr compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
missing_debug_impls.rs
missing_debug_impls.stderr
mod-subitem-as-enum-variant.rs
mod-subitem-as-enum-variant.stderr
monomorphize-abi-alignment.rs
msvc-data-only.rs
msvc-opt-minsize.rs rewrite test-harness to rmake 2024-07-02 11:37:59 -04:00
multibyte.rs
multiline-comment.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
mut-function-arguments.rs
mutual-recursion-group.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
myriad-closures.rs
nested-block-comment.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
nested-cfg-attrs.rs Use cfg(false) in UI tests 2025-04-03 21:41:58 +00:00
nested-cfg-attrs.stderr
nested-class.rs
nested-ty-params.rs UI tests: migrate remaining compile time error-patterns to line annotations 2025-04-13 21:48:53 +03:00
nested-ty-params.stderr UI tests: migrate remaining compile time error-patterns to line annotations 2025-04-13 21:48:53 +03:00
new-impl-syntax.rs
new-import-syntax.rs
new-style-constants.rs
new-unicode-escapes.rs
newlambdas.rs
newtype-polymorphic.rs
newtype.rs
no-capture-arc.rs compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
no-capture-arc.stderr compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
no-core-1.rs
no-core-2.rs
no-link-unknown-crate.rs
no-link-unknown-crate.stderr
no-reuse-move-arc.rs
no-reuse-move-arc.stderr Remove CallKind::Deref hack from UseSpans 2025-01-06 03:55:19 +00:00
no-send-res-ports.rs
no-send-res-ports.stderr Remove detail from label/note that is already available in other note 2024-10-29 16:26:57 +00:00
no-warn-on-field-replace-issue-34101.rs
no_send-enum.rs
no_send-enum.stderr Remove detail from label/note that is already available in other note 2024-10-29 16:26:57 +00:00
no_send-rc.rs
no_send-rc.stderr E0277: suggest dereferencing function arguments in more cases 2024-11-21 03:27:05 -08:00
no_share-enum.rs
no_share-enum.stderr Remove detail from label/note that is already available in other note 2024-10-29 16:26:57 +00:00
no_share-struct.rs
no_share-struct.stderr
noexporttypeexe.rs
noexporttypeexe.stderr
non-constant-expr-for-arr-len.rs
non-constant-expr-for-arr-len.stderr
non-copyable-void.rs
non-copyable-void.stderr
non-fmt-panic.fixed
non-fmt-panic.rs
non-fmt-panic.stderr Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
noncopyable-class.rs
noncopyable-class.stderr
nonscalar-cast.fixed UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
nonscalar-cast.rs UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
nonscalar-cast.stderr
not-clone-closure.rs Add --diagnostic-width to some tests failing after 1a0c502183 2024-11-06 20:02:42 +01:00
not-clone-closure.stderr Add --diagnostic-width to some tests failing after 1a0c502183 2024-11-06 20:02:42 +01:00
not-copy-closure.rs
not-copy-closure.stderr Suggest borrowing arguments in generic positions when trait bounds are satisfied 2024-11-13 20:29:40 -08:00
not-enough-arguments.rs
not-enough-arguments.stderr More sophisticated span trimming 2025-02-21 00:41:17 +00:00
nul-characters.rs
nullable-pointer-iotareduction.rs
nullable-pointer-size.rs
object-pointer-types.rs
object-pointer-types.stderr Trim suggestion parts to the subset that is purely additive 2025-02-14 00:44:10 -08:00
objects-coerce-freeze-borrored.rs
occurs-check-2.rs increment depth of nested obligations 2025-03-31 23:58:17 +02:00
occurs-check-2.stderr increment depth of nested obligations 2025-03-31 23:58:17 +02:00
occurs-check-3.rs
occurs-check-3.stderr increment depth of nested obligations 2025-03-31 23:58:17 +02:00
occurs-check.rs
occurs-check.stderr increment depth of nested obligations 2025-03-31 23:58:17 +02:00
once-cant-call-twice-on-heap.rs
once-cant-call-twice-on-heap.stderr
oom_unwind.rs
op-assign-builtins-by-ref.rs
opeq.rs
opt-in-copy.rs
opt-in-copy.stderr
optimization-remark.rs UI tests: migrate remaining compile time error-patterns to line annotations 2025-04-13 21:48:53 +03:00
out-pointer-aliasing.rs
output-slot-variants.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
over-constrained-vregs.rs
panic-while-printing.rs
panic_implementation-closures.rs
paren-span.rs
paren-span.stderr
partialeq_help.rs
partialeq_help.stderr
path-lookahead.fixed
path-lookahead.rs
path-lookahead.stderr
path.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
paths-containing-nul.rs
phantom-auto-trait.rs
phantom-auto-trait.stderr Use trait name instead of full constraint in suggestion message 2024-12-07 21:29:58 +00:00
point-to-type-err-cause-on-impl-trait-return-2.rs
point-to-type-err-cause-on-impl-trait-return-2.stderr
pptypedef.rs
pptypedef.stderr Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
primitive-binop-lhs-mut.rs
print-calling-conventions.rs Migrate run-make/print-calling-conventions to ui-test 2024-08-03 20:09:42 -04:00
print-calling-conventions.stdout update/bless tests 2025-04-06 21:41:47 +02:00
print-stdout-eprint-stderr.rs tests: use needs-subprocess instead of ignore-{wasm32,emscripten,sgx} 2025-01-23 20:51:29 +08:00
project-cache-issue-31849.rs
ptr-coercion-rpass.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
ptr-coercion.rs
ptr-coercion.stderr
query-visibility.rs
raw-str.rs
realloc-16687.rs
reassign-ref-mut.rs
reassign-ref-mut.stderr
reexport-test-harness-main.rs
removing-extern-crate.fixed
removing-extern-crate.rs
removing-extern-crate.stderr
resource-assign-is-not-copy.rs
resource-destruct.rs
seq-args.rs
seq-args.stderr Revert suggestion verbosity change 2024-07-22 22:51:53 +00:00
shadow-bool.rs
shadowed-use-visibility.rs
short-error-format.rs
short-error-format.stderr On short error format, append primary span label to message 2024-08-06 04:08:10 +00:00
sized-borrowed-pointer.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
sized-cycle-note.rs
sized-cycle-note.stderr
sized-owned-pointer.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
sse2.rs sudo CI=green && Review changes <3 2024-06-25 18:06:22 +02:00
stable-addr-of.rs
std-uncopyable-atomics.rs
std-uncopyable-atomics.stderr
stdio-is-blocking.rs tests: use needs-subprocess instead of ignore-{wasm32,emscripten,sgx} 2025-01-23 20:51:29 +08:00
string-box-error.rs
struct-ctor-mangling.rs
super-at-top-level.rs
super-at-top-level.stderr
super-let.borrowck.stderr Add tests for super let. 2025-04-04 16:32:18 +02:00
super-let.rs Add tests for super let. 2025-04-04 16:32:18 +02:00
super.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
svh-add-nothing.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
swap-1.rs
swap-overlapping.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
switched-expectations.rs
switched-expectations.stderr
syntax-extension-minor.rs
tag-type-args.rs
tag-type-args.stderr
tag-variant-cast-non-nullary.fixed
tag-variant-cast-non-nullary.rs
tag-variant-cast-non-nullary.stderr
tail-call-arg-leak.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
tail-cps.rs Remove some unnecessary parens in assert! conditions 2025-02-06 22:28:44 +00:00
tail-typeck.rs compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
tail-typeck.stderr compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
trailing-comma.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
trait-method-number-parameters.rs
trait-method-number-parameters.stderr
transmute-equal-assoc-types.rs
transmute-non-immediate-to-immediate.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
trivial_casts-rpass.rs
trivial_casts-rpass.stderr
try-from-int-error-partial-eq.rs
try-operator-hygiene.rs
try-operator.rs
tydesc-name.rs
type-id-higher-rank-2.rs
type-namespace.rs
type-param-constraints.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
type-param.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
type-ptr.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
type-use-i1-versus-i8.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
type_length_limit.rs tests: remove explicit long type filename hash normalization from some ui tests 2025-03-04 00:21:02 +08:00
type_length_limit.stderr tests: remove explicit long type filename hash normalization from some ui tests 2025-03-04 00:21:02 +08:00
typeid-intrinsic.rs
typestate-multi-decl.rs
unconstrained-none.rs
unconstrained-none.stderr
unconstrained-ref.rs
unconstrained-ref.stderr
underscore-ident-matcher.rs Tweak more warnings. 2024-10-28 14:20:28 +11:00
underscore-ident-matcher.stderr Tweak more warnings. 2024-10-28 14:20:28 +11:00
underscore-lifetimes.rs
underscore-method-after-integer.rs
unevaluated_fixed_size_array_len.rs
unevaluated_fixed_size_array_len.stderr
uninit-empty-types.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
unit.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
unknown-language-item.rs
unknown-language-item.stderr
unknown-llvm-arg.rs Remove the -test suffix from normalize directives 2024-12-27 19:58:16 +11:00
unknown-llvm-arg.stderr
unnamed_argument_mode.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
unreachable-code-1.rs
unreachable-code.rs
unsigned-literal-negation.rs
unsigned-literal-negation.stderr Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
unused-move-capture.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
unused-move.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
unwind-no-uwtable.rs
use-import-export.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
use-keyword-2.rs
use-module-level-int-consts.rs
use-nested-groups.rs
used.rs
used.stderr Show used attribute's kind for user when find it isn't applied to a static variable. 2024-06-29 19:39:09 +08:00
usize-generic-argument-parent.rs
usize-generic-argument-parent.stderr
utf8-bom.rs Annotate input reference tests 2024-10-30 16:47:47 -07:00
utf8_idents.rs
virtual-call-attrs-issue-137646.rs Don't infer attributes of virtual calls based on the function body 2025-02-27 12:57:26 +08:00
wait-forked-but-failed-child.rs Use split_whitespace() when filtering lines in the ps output 2025-02-06 15:05:53 -05:00
walk-struct-literal-with.rs
walk-struct-literal-with.stderr
weak-new-uninhabited-issue-48493.rs
weird-exit-code.rs
weird-exprs.rs Remove some unnecessary parens in assert! conditions 2025-02-06 22:28:44 +00:00
write-fmt-errors.rs Implement default methods for io::Empty and io::Sink 2025-03-10 01:38:20 -07:00
writing-to-immutable-vec.rs
writing-to-immutable-vec.stderr
wrong-hashset-issue-42918.rs