This page lists all FIXMEs and HACKs in the rustc source code. It is updated daily. GitHub repo: https://github.com/oli-obk/fixmeh
Note that you can sort on issue state by clicking on the "Issue states" header.
Description | Source | Issue states |
---|---|---|
! // FIXME(static_mut_refs): Do not allow `static_mut_refs` lint | std/src/sync/mod | |
! FIXME(Centril): For now being, much of the logic is still in `rustc_ast::attr` | rustc_attr_parsing/src/lib | |
! FIXME(ZuseZ4): Remove this once we have a smarter linter | rustc_builtin_macros/src/autodiff | |
! FIXME: <Gankra/thin-vec/pull/66> is merged, this can be removed | rustc_data_structures/src/thinvec | |
! FIXME: Move this to a more general place. The utility of this extends to | rustc_const_eval/src/util/compare_types | |
! FIXME: No span and source file information is implemented yet | tools/rust-analyzer/crates/proc-macro-srv/src/server_impl | |
! FIXME: Rewrite the TypeTree logic in Enzyme core to reduce the need for the rustc frontend to | rustc_ast/src/expand/typetree | |
! FIXME: This description might be partly inaccurate and should be extended, along with | rustc_ast/src/expand/typetree | |
! FIXME: We should also re-evaluate where we create TypeTrees from Rust types, since MIR | rustc_ast/src/expand/typetree | |
! FIXME: always look through the bounds of an opaque type to see if there are | ui/impl-trait/call_method_without_import | |
! FIXME: rust-lang/rust/issues/128733 this test uses external | run-make/thumb-none-qemu/rmake | |
! FIXME: todo | ui/unpretty/expanded-exhaustive ui/unpretty/expanded-exhaustive ui/unpretty/expanded-exhaustive | |
! FIXME: upstream to <kriomant/panic-context> ? | tools/rust-analyzer/crates/stdx/src/panic_context | |
"(2 as T<U>) < V", // FIXME: no parentheses needed | ui-fulldeps/pprust-parenthesis-insertion | |
"(return) + 2", // FIXME: no parenthesis needed | ui-fulldeps/pprust-parenthesis-insertion | |
"2 + (return 2)", // FIXME: no parenthesis needed | ui-fulldeps/pprust-parenthesis-insertion | |
"FIXME(-Znext-solver): Overflowed when processing region obligations: {my_region_obligations:#?}" | rustc_infer/src/infer/outlives/obligations | |
"FIXME(-Znext-solver): Overflowed when processing region obligations: {outlives_predicates:#?}" | rustc_borrowck/src/type_check/constraint_conversion | |
"TODO is used for tasks that should be done before merging a PR; If you want to leave a message in the codebase use FIXME" | tools/tidy/src/style | |
"a" => (), //FIXME [gated]~ ERROR can't compare `str` with `str` in const contexts | ui/traits/const-traits/match-non-const-eq | |
"allocator-api2", // FIXME: only appears in Cargo.lock due to rust-lang/cargo/issues/10801 | tools/tidy/src/deps | |
"marshallpierce/rust-base64", // FIXME: one test is OOM-killed | rustc_codegen_gcc/build_system/src/test | |
"serde-rs/serde", // FIXME: one test fails | rustc_codegen_gcc/build_system/src/test | |
"time-rs/time", // FIXME: one test fails (time-rs/time/issues/719) | rustc_codegen_gcc/build_system/src/test | |
"gitlab.gnome.org/GNOME/librsvg", // FIXME: doesn't compile in the CI since the | rustc_codegen_gcc/build_system/src/test | |
# // FIXME(rust-lang/miri/issues/3670) | alloc/src/vec/mod | |
# // FIXME(f16_f128): remove when `eqtf2` is available | core/src/num/f128 | |
# #[cfg(not(miri))] { // FIXME: use strict provenance APIs once they are stable, then remove this `cfg` | core/src/primitive_docs | |
# #[cfg(target_arch = "aarch64")] { // FIXME(f16_F128): rust-lang/rust#123885 | core/src/num/f16 core/src/num/f16 core/src/num/f16 core/src/num/f16 core/src/num/f16 | Closed |
# // FIXME(f16_f128): ABI issues on MSVC | core/src/num/f16 core/src/num/f16 | |
# // FIXME(f16_f128): LLVM crashes on s390x, llvm/llvm-project#50374 | core/src/num/f16 core/src/num/f16 core/src/num/f16 core/src/num/f16 core/src/num/f16 | Closed |
# // FIXME(f16_f128): enable this once const casting works | core/src/num/f128 core/src/num/f16 | |
# // FIXME(f16_f128): extendhfsf2, truncsfhf2, __gnu_h2f_ieee, __gnu_f2h_ieee missing for many platforms | core/src/num/f16 core/src/num/f16 core/src/num/f16 core/src/num/f16 | |
# // FIXME(f16_f128): remove when `eqtf2` is available | core/src/num/f128 core/src/num/f128 core/src/num/f128 core/src/num/f128 core/src/num/f128 core/src/num/f128 core/src/num/f128 core/src/num/f128 core/src/num/f128 core/src/num/f128 core/src/num/f128 core/src/num/f128 | |
# // FIXME(f16_f128): remove when `float*itf` is available | core/src/num/f128 | |
# // FIXME(f16_f128): remove when `lttf2` is available | core/src/num/f128 | |
# // FIXME(f16_f128): remove when `unordtf2` is available | core/src/num/f128 | |
# // FIXME(f16_f128): remove when `{eq,gt,unord}tf` are available | core/src/num/f128 | |
# // FIXME(rust-lang/miri/issues/3670) | alloc/src/boxed alloc/src/boxed alloc/src/string alloc/src/vec/into_iter alloc/src/vec/mod core/src/mem/manually_drop core/src/mem/maybe_uninit | |
# FIXME | tools/run-make-support/src/scoped_run | |
#![allow(clippy::redundant_closure)] // FIXME suggestion may have redundant closure | tools/clippy/tests/ui/manual_filter_map tools/clippy/tests/ui/manual_find_map | |
#![allow(fuzzy_provenance_casts)] // FIXME: this entire module systematically confuses pointers and integers | std/src/sys/pal/sgx/mod | |
#![allow(improper_ctypes)] // FIXME: this test is inherently not FFI-safe | ui/abi/extern/extern-pass-empty | |
#![allow(rustc::untranslatable_diagnostic)] // FIXME: make this translatable | rustc_driver_impl/src/lib rustc_session/src/config | |
#![feature(proc_macro_internals)] // FIXME - this shouldn't be necessary | ui/proc-macro/auxiliary/span-from-proc-macro | |
#[allow(clippy::too_many_arguments)] // FIXME: reduce the number of args and remove this | bootstrap/src/core/build_steps/test bootstrap/src/core/build_steps/tool | |
#[allow(clippy::useless_attribute)] // FIXME: following use of `hidden_glob_reexports` incorrectly triggers `useless_attribute` lint | rustc_ast/src/token | |
#[allow(dead_code)] // FIXME(81658): should be used + lint reinstated after #83171 relands | rustc_passes/src/dead rustc_passes/src/dead | Closed Closed |
#[allow(rustc::diagnostic_outside_of_impl)] // FIXME | rustc_borrowck/src/diagnostics/mod rustc_borrowck/src/diagnostics/region_errors rustc_borrowck/src/diagnostics/region_errors rustc_passes/src/check_attr rustc_session/src/config rustc_session/src/parse | |
#[allow(rustc::untranslatable_diagnostic)] // FIXME: make this translatable | rustc_ast_passes/src/feature_gate rustc_ast_passes/src/feature_gate rustc_ast_passes/src/feature_gate rustc_ast_passes/src/feature_gate rustc_attr_parsing/src/attributes/cfg rustc_borrowck/src/diagnostics/mod rustc_borrowck/src/diagnostics/region_errors rustc_driver_impl/src/args rustc_expand/src/expand rustc_interface/src/util rustc_interface/src/util rustc_session/src/options rustc_session/src/search_paths rustc_session/src/search_paths rustc_session/src/session | |
#[allow(unreachable_code)] // FIXME false positive | rustc_codegen_cranelift/example/mini_core_hello_world | |
#[allow(unused)] // FIXME: the unused lint is probably incorrect here | ui/never_type/lint-never-type-fallback-flowing-into-unsafe | |
#[allow(unused_attributes)] // FIXME(#58633): do a principled fix instead | core/src/convert/mod | Closed |
#[cfg_attr(target_env = "sgx", ignore)] // FIXME: fortanix/rust-sgx/issues/31 | std/src/net/tcp/tests std/src/net/tcp/tests std/src/net/tcp/tests std/src/net/tcp/tests std/src/net/tcp/tests std/src/net/tcp/tests | |
#[ignore = "FIXME: we do not do type inference for gen blocks yet"] | tools/rust-analyzer/crates/ide-assists/src/handlers/convert_closure_to_fn | |
#[stable(feature = "slice_iter_mut_as_mut_slice", since = "FIXME")] | core/src/slice/iter | |
#[test] // FIXME: some test here actually test token reparsing | tools/rust-analyzer/crates/syntax/src/parsing/reparsing | |
&[(128, "sse"), (256, "avx"), (512, "avx512f")]; // FIXME: might need changes for AVX10 | rustc_target/src/target_features | Closed Closed Closed |
("fortanix-sgx-abi", "MPL-2.0"), // libstd but only for `sgx` target. FIXME: this dependency violates the documentation comment above | tools/tidy/src/deps | |
("src/tools/miri/test-cargo-miri", &[], None), // FIXME uncomment once all deps are vendored | tools/tidy/src/deps | |
("src/tools/miri/test_dependencies", &[], None), // FIXME uncomment once all deps are vendored | tools/tidy/src/deps | |
(FIXME) remove *First variants | rustc_ast/src/expand/autodiff_attrs | |
(FIXME: see check_loans.rs) | rustc_borrowck/src/lib | |
(FIXME: technically we only need to check this if the type is a fn ptr...) | rustc_next_trait_solver/src/solve/effect_goals rustc_next_trait_solver/src/solve/normalizes_to/mod rustc_next_trait_solver/src/solve/normalizes_to/mod rustc_next_trait_solver/src/solve/trait_goals rustc_next_trait_solver/src/solve/trait_goals | |
(FIXME?: The latter clause might be overstating. We may want to include the bound if the self | tools/rust-analyzer/crates/ide-assists/src/handlers/generate_function | |
(covers fields and locals). FIXME: This is not terribly accurate | tools/rust-analyzer/crates/ide-db/src/search | |
(see FIXME in tests::impl_trait) and falling back on any unknowns | tools/rust-analyzer/crates/ide/src/signature_help | |
(the structure is not entirely correct, since there can be situations requiring two imports, see FIXME below for the details) | tools/rust-analyzer/crates/ide-db/src/imports/import_assets | |
1. FIXME: Ribs (local variables), there's no necessary infrastructure yet | rustc_resolve/src/ident | |
1. FIXME: Ribs (type parameters), there's no necessary infrastructure yet | rustc_resolve/src/ident | |
1. assignments are always made to mutable locations (FIXME: does that still really go here?) | rustc_borrowck/src/lib | |
31, // FIXME: reparse only int literal here | tools/rust-analyzer/crates/syntax/src/parsing/reparsing | |
64-bit names. FIXME: In 32-bit compatibility mode /proc/cpuinfo will | tools/rustfmt/tests/source/cfg_if/detect/os/linux/aarch64 tools/rustfmt/tests/target/cfg_if/detect/os/linux/aarch64 | |
> FIXME: G1 reserved for now for large imm generation by frame code | rustc_target/src/asm/sparc | |
@ build-pass (FIXME(55996): should be run on targets supporting avx) | ui/issues/issue-44056 | Open |
@ build-pass (FIXME(62277): could be check-pass? | ui/impl-trait/multiple-lifetimes/ordinary-bounds-pick-original-elided | Open |
@ build-pass (FIXME(62277): could be check-pass?) | incremental/change_crate_dep_kind incremental/change_private_fn/struct_point incremental/change_private_fn_cc/struct_point incremental/change_private_impl_method_cc/struct_point incremental/hashes/call_expressions incremental/hashes/closure_expressions incremental/hashes/consts incremental/hashes/enum_constructors incremental/hashes/enum_defs incremental/hashes/exported_vs_not incremental/hashes/extern_mods incremental/hashes/for_loops incremental/hashes/function_interfaces incremental/hashes/if_expressions incremental/hashes/indexing_expressions incremental/hashes/inherent_impls incremental/hashes/inline_asm incremental/hashes/let_expressions incremental/hashes/loop_expressions incremental/hashes/match_expressions incremental/hashes/panic_exprs incremental/hashes/statics incremental/hashes/struct_constructors incremental/hashes/struct_defs incremental/hashes/trait_defs incremental/hashes/trait_impls incremental/hashes/type_defs incremental/hashes/unary_and_binary_exprs incremental/hashes/while_let_loops incremental/hashes/while_loops incremental/ich_nested_items incremental/incremental_proc_macro incremental/issue-42602 incremental/issue-59523-on-implemented-is-not-unused incremental/issue-59524-layout-scalar-valid-range-is-not-unused incremental/krate-inherent incremental/macro_export incremental/remove_source_file/main incremental/string_constant ui/associated-consts/associated-const-trait-bound ui/associated-type-bounds/entails-sized-dyn-compatibility ui/associated-type-bounds/trait-params ui/async-await/async-fn-send-uses-nonsend ui/async-await/async-matches-expr ui/async-await/async-with-closure ui/async-await/generics-and-bounds ui/async-await/issues/issue-60674 ui/async-await/issues/issue-61986 ui/attributes/attr-before-view-item ui/attributes/attr-before-view-item2 ui/attributes/attr-mix-new ui/attributes/class-attributes-1 ui/attributes/class-attributes-2 ui/attributes/method-attributes ui/attributes/unrestricted-attribute-tokens ui/attributes/variant-attributes ui/closure-expected-type/expect-fn-supply-fn-multiple ui/closure-expected-type/expect-infer-var-supply-ty-with-bound-region ui/closure-expected-type/expect-infer-var-supply-ty-with-free-region ui/closures/closure_promotion ui/coherence/coherence_copy_like_err_fundamental_struct ui/conditional-compilation/cfg-attr-multi-false ui/conditional-compilation/cfg-attr-multi-true ui/consts/const-expr-addr-operator ui/consts/const-pattern-not-const-evaluable ui/consts/const-validation-fail-55455 ui/consts/const_fn_return_nested_fn_ptr ui/consts/const_let_irrefutable ui/consts/drop_none ui/consts/invalid_promotion ui/consts/min_const_fn/min_const_fn_libstd ui/consts/promote_evaluation_unused_result ui/consts/promote_fn_calls ui/consts/promote_fn_calls_std ui/consts/promoted-validation-55454 ui/consts/promoted_regression ui/consts/static_mut_containing_mut_ref ui/consts/std/slice ui/consts/underscore_const_names ui/consts/union_constant ui/deprecation/derive_on_deprecated ui/deprecation/derive_on_deprecated_forbidden ui/dyn-compatibility/by-value-self ui/dyn-compatibility/phantom-fn ui/feature-gates/feature-gate-const-indexing ui/generics/generic-param-attrs ui/impl-header-lifetime-elision/inherent-impl ui/impl-trait/associated-impl-trait-type-generic-trait ui/impl-trait/associated-impl-trait-type-trivial ui/impl-trait/associated-impl-trait-type ui/impl-trait/can-return-unconstrained-closure ui/impl-trait/deprecated_annotation ui/impl-trait/multiple-lifetimes/multiple-lifetimes ui/impl-trait/multiple-lifetimes/ordinary-bounds-pick-original ui/impl-trait/multiple-lifetimes/ordinary-bounds-pick-other ui/impl-trait/private_unused ui/impl-trait/return-position-impl-trait-minimal ui/imports/extern-crate-self/extern-crate-self-macro-item ui/imports/extern-crate-self/extern-crate-self-pass ui/imports/extern-prelude-extern-crate-absolute-expanded ui/imports/extern-prelude-extern-crate-cfg ui/imports/extern-prelude-extern-crate-pass ui/imports/extern-prelude-extern-crate-shadowing ui/imports/local-modularized-tricky-pass-1 ui/imports/local-modularized ui/macros/macro-expanded-include/test ui/macros/macro-shadowing-relaxed ui/macros/macro-stmt-matchers ui/macros/macro-tt-matchers ui/macros/macro-use-scope ui/macros/trace-macro ui/methods/method-call-lifetime-args-subst-index ui/methods/method-trait-object-with-hrtb ui/non_modrs_mods_and_inline_mods/non_modrs_mods_and_inline_mods ui/panic_implementation-closures ui/privacy/private-in-public-expr-pat ui/privacy/private-in-public-type-alias-impl-trait ui/privacy/restricted/lookup-ignores-private ui/proc-macro/no-missing-docs ui/range/range_traits-4 ui/range/range_traits-5 ui/range/range_traits-7 ui/reachable/expr_andand ui/reachable/expr_oror ui/resolve/extern-prelude ui/rfcs/rfc-2008-non-exhaustive/variants_fictive_visibility ui/rfcs/rfc-2306-convert-id/convert-id-const-with-gate ui/rmeta/rmeta-lib-pass ui/rmeta/rmeta-pass ui/rmeta/rmeta-priv-warn ui/rust-2018/edition-lint-paths-2018 ui/rust-2018/edition-lint-uninferable-outlives ui/rust-2018/proc-macro-crate-in-paths ui/rust-2018/uniform-paths/fn-local-enum ui/rust-2018/uniform-paths/from-decl-macro ui/rust-2018/uniform-paths/prelude ui/self/explicit-self-closures ui/self/self-in-typedefs ui/self/self-type-param ui/static/static-extern-type ui/static/static_sized_requirement ui/test-attrs/test-cant-be-shadowed ui/traits/alias/maybe-bound ui/traits/conservative_impl_trait ui/traits/object/with-self-in-projection-output-good ui/traits/object/with-self-in-projection-output-repeated-supertrait ui/traits/privacy ui/traits/with-dst ui/try-trait/try-poll ui/type-alias-impl-trait/associated-type-alias-impl-trait ui/type-alias-impl-trait/bound_reduction ui/type-alias-impl-trait/cross_crate_ice ui/type-alias-impl-trait/cross_crate_ice2 ui/type-alias-impl-trait/different_defining_uses_never_type2 ui/type-alias-impl-trait/generic_lifetime_param ui/uninhabited/privately-uninhabited-dead-code ui/variance/variance-use-contravariant-struct-2 ui/variance/variance-use-covariant-struct-2 | Open |
@ build-pass (FIXME(62277): should be check-pass) | ui/non-fmt-panic | Open |
@ ignore-android FIXME #17520 | ui/backtrace/backtrace ui/backtrace/dylib-dep ui/backtrace/line-tables-only ui/backtrace/std-backtrace ui/panics/issue-47429-short-backtraces ui/panics/runtime-switch ui/panics/short-ice-remove-middle-frames-2 ui/panics/short-ice-remove-middle-frames | Open |
@ ignore-android: FIXME (#20004) | ui/runtime/out-of-stack | Open |
@ ignore-android: FIXME(#10381) | debuginfo/empty-string debuginfo/gdb-pretty-struct-and-enums debuginfo/pretty-huge-vec debuginfo/pretty-slices debuginfo/pretty-std-collections debuginfo/pretty-std debuginfo/pretty-uninitialized-vec debuginfo/step-into-match | Open |
@ ignore-emscripten FIXME(#45351) | ui/simd/issue-32947 ui/simd/issue-39720 | Closed |
@ ignore-emscripten FIXME(#45351) hits an LLVM assert | ui/simd/intrinsic/generic-arithmetic-pass ui/simd/intrinsic/generic-cast-pass ui/simd/intrinsic/generic-comparison-pass ui/simd/intrinsic/generic-elements-pass | Closed |
@ ignore-freebsd FIXME fails on BSD | ui/structs-enums/class-cast-to-trait | |
@ ignore-fuchsia code returned as ZX_TASK_RETCODE_EXCEPTION_KILL, FIXME (#58590) | ui/process/signal-exit-status | Open |
@ ignore-fuchsia must translate zircon signal to SIGABRT, FIXME (#58590) | ui/runtime/out-of-stack | Open |
@ ignore-fuchsia must translate zircon signal to SIGILL, FIXME (#58590) | ui/simd/target-feature-mixup | Open |
@ ignore-fuchsia must translate zircon signal to SIGSEGV/SIGBUS, FIXME (#58590) | ui/abi/segfault-no-out-of-stack | Open |
@ ignore-lldb: FIXME(#27089) | debuginfo/generic-enum-with-different-disr-sizes | Open |
@ ignore-loongarch64 FIXME | codegen/catch-unwind | |
@ ignore-musl FIXME #31506 | ui/abi/stack-probes-lto | Open |
@ ignore-riscv64 FIXME | codegen/catch-unwind | |
@ ignore-s390x FIXME | codegen/catch-unwind | |
@ ignore-stage1 FIXME: this line can be removed once these new error messages are in stage 0 rustc | ui-fulldeps/hash-stable-is-unstable ui-fulldeps/pathless-extern-unstable | |
@ ignore-std-debug-assertions (FIXME: checks for call detect scoped noalias metadata) | codegen/vec-in-place codegen/vecdeque-drain | |
@ ignore-test (FIXME: #125092) | rustdoc/inline_cross/assoc-const-equality | Open |
@ ignore-test FIXME(81658, 83171) | ui/lint/dead-code/self-assign | Closed Closed |
@ ignore-wasm32 FIXME: ignoring wasm as it suggests slightly different impls | ui/inference/issue-72616 | |
@ ignore-windows FIXME(#84933) | codegen/thread-local ui/suggestions/missing-lifetime-specifier | Closed |
All uses of this macro are FIXME(const-hack) | core/src/panic | |
Applicability::MaybeIncorrect, // FIXME #2597 | tools/clippy/clippy_lints/src/operators/op_ref tools/clippy/clippy_lints/src/operators/op_ref tools/clippy/clippy_lints/src/operators/op_ref tools/clippy/clippy_lints/src/operators/op_ref | Closed |
Definition::BuiltinAttr(_) => return None, // FIXME | tools/rust-analyzer/crates/ide-db/src/defs | |
Definition::ToolModule(_) => return None, // FIXME | tools/rust-analyzer/crates/ide-db/src/defs | |
Dynamic libraries are not linked here, see the FIXME in `add_upstream_native_libraries` | rustc_codegen_ssa/src/back/link | |
EXPLICIT_OUTLIVES_REQUIREMENTS // FIXME(#52665, #47816) not always applicable and not all | rustc_lint/src/lib | Open Closed |
Edition::CURRENT_FIXME | tools/rust-analyzer/crates/project-model/src/workspace | |
FIXME | rustc_target/src/asm/sparc rustc_target/src/callconv/powerpc64 alloc/tests/autotraits tools/clippy/clippy_lints/src/transmute/transmute_null_to_fn tools/clippy/clippy_lints/src/transmute/transmuting_null tools/rust-analyzer/crates/hir-def/src/body/lower tools/rust-analyzer/crates/hir-def/src/expander tools/rust-analyzer/crates/hir-expand/src/builtin/quote tools/rust-analyzer/crates/hir-expand/src/builtin/quote tools/rust-analyzer/crates/hir-ty/src/chalk_db tools/rust-analyzer/crates/hir-ty/src/infer/expr tools/rust-analyzer/crates/hir-ty/src/infer/expr tools/rust-analyzer/crates/hir-ty/src/infer/expr tools/rust-analyzer/crates/hir-ty/src/tests/display_source_code tools/rust-analyzer/crates/hir-ty/src/variance tools/rust-analyzer/crates/ide/src/call_hierarchy tools/rust-analyzer/crates/ide/src/call_hierarchy tools/rust-analyzer/crates/ide/src/call_hierarchy tools/rust-analyzer/crates/ide/src/doc_links tools/rust-analyzer/crates/ide/src/expand_macro tools/rust-analyzer/crates/ide-assists/src/handlers/convert_closure_to_fn tools/rust-analyzer/crates/ide-assists/src/handlers/fix_visibility tools/rust-analyzer/crates/ide-completion/src/context/analysis tools/rust-analyzer/crates/ide-db/src/defs tools/rust-analyzer/crates/ide-db/src/imports/import_assets tools/rust-analyzer/crates/ide-db/src/imports/import_assets tools/rust-analyzer/crates/ide-diagnostics/src/handlers/typed_hole tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span tools/rust-analyzer/crates/project-model/src/env tools/rust-analyzer/crates/rust-analyzer/src/lsp/capabilities tools/rust-analyzer/crates/syntax/src/fuzz tools/rust-analyzer/crates/syntax/src/validation ui/dynamically-sized-types/dst-coerce-rc ui/imports/issue-114682-2 ui/lexer/lex-emoji-identifiers ui/parser/block-no-opening-brace ui/threads-sendsync/sync-send-iterators-in-libcore ui/threads-sendsync/sync-send-iterators-in-libcore ui/threads-sendsync/sync-send-iterators-in-libcore ui/threads-sendsync/sync-send-iterators-in-libcore | |
FIXME #11059 handle NaN, inf and overflow | test/src/stats | Closed |
FIXME #25759 This should also have `nocapture` | codegen/function-arguments codegen/function-arguments codegen/function-arguments codegen/function-arguments codegen/function-arguments codegen/function-arguments codegen/function-arguments | Closed |
FIXME #56861: DRYer prelude filtering | rustc_hir_typeck/src/fn_ctxt/suggestions rustc_trait_selection/src/error_reporting/infer/suggest | Open |
FIXME #9694: [`Struct::Type`] | tools/rust-analyzer/crates/ide/src/doc_links/tests | Closed |
FIXME (#13400): this is only a tiny fraction of the Windows console api | test/src/term/win | Closed |
FIXME (#19470): cannot provide PartialOrd<OsStr> for str until we | std/src/ffi/os_str | Closed |
FIXME (#2166): This is not nearly enough to support correct versioning | rustc_metadata/src/rmeta/encoder | Closed |
FIXME (#23545): uncomment the remaining impls | core/src/num/saturating core/src/num/wrapping | Open |
FIXME (#2397): At some point we want to rpath our guesses as to | rustc_codegen_ssa/src/back/link | Closed |
FIXME (#3300): Should allow items to be anonymous. Right now | tools/rustfmt/tests/source/issue-539 tools/rustfmt/tests/source/issue-683 tools/rustfmt/tests/target/issue-539 tools/rustfmt/tests/target/issue-683 | Closed |
FIXME (#45742): replace the above impl for &mut with the following more general one | core/src/convert/mod | Open |
FIXME (#45742): replace the above impls for &/&mut with the following more general one | core/src/convert/mod | Open |
FIXME (#46459 and #46460): ideally | rustc_hir_typeck/src/demand | Open Open |
FIXME (#47949) | ui/drop/dynamic-drop ui/drop/dynamic-drop ui/drop/dynamic-drop ui/drop/dynamic-drop | Open |
FIXME (#47949) We leak values when we panic in a destructor after | ui/drop/dynamic-drop | Open |
FIXME (#54943) NLL doesn't enforce WF condition in unreachable code if | ui/regions/regions-outlives-projection-container | Closed |
FIXME (GuillaumeGomez): To be done once gccjit has been built in the CI | bootstrap/src/core/build_steps/gcc | |
FIXME (rust-lang/rust/issues/133459): do we want to change the JSON | rustc_target/src/spec/mod | |
FIXME (introduced by #65251) | test/src/tests | Closed |
FIXME (mikeyhew) change this to use &own if it is ever added to the language | rustc_ty_utils/src/abi | |
FIXME (mikeyhew) uncomment this when unsized rvalues dyn-compatibility is implemented | ui/self/arbitrary_self_types_pointers_and_wrappers | |
FIXME (mikeyhew) uncomment this when unsized rvalues object-safety is implemented | rustc_codegen_cranelift/example/arbitrary_self_types_pointers_and_wrappers rustc_codegen_gcc/example/arbitrary_self_types_pointers_and_wrappers tools/miri/tests/pass/dyn-arbitrary-self | |
FIXME - determine what we should do if we encounter multiple | rustc_borrowck/src/region_infer/mod | |
FIXME - if we get deref patterns, use them to reduce duplication here | rustc_builtin_macros/src/alloc_error_handler rustc_builtin_macros/src/global_allocator | |
FIXME - maybe capture semicolon in recovery? | rustc_parse/src/parser/stmt | |
FIXME - maybe we should overwrite 'self' outside of `collect_tokens`? | rustc_parse/src/parser/generics | |
FIXME - the below is probably no longer true in full | tools/rustfmt/src/closures | |
FIXME - try to continue parsing other generics? | rustc_parse/src/parser/generics | |
FIXME -- We are using `span` as the span of the `|...|` | rustc_expand/src/build | |
FIXME -- check for types that deref to `Self` | rustc_hir_typeck/src/method/probe | |
FIXME -- consider correcting impedance mismatch in some way | rustc_hir_analysis/src/outlives/mod | |
FIXME -- use non-incremental mode as an oracle? That doesn't apply | tools/compiletest/src/runtest/incremental | |
FIXME : We can omit already implemented impl_traits | tools/rust-analyzer/crates/ide-assists/src/handlers/generate_delegate_trait | |
FIXME : Handle MacroCall case | tools/rust-analyzer/crates/ide-assists/src/handlers/generate_delegate_trait | |
FIXME : See match arm below regarding tuple structs | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/unresolved_field | |
FIXME : We can't rely on `make::path_qualified` for now but it would be nice to replace the following with it | tools/rust-analyzer/crates/ide-assists/src/handlers/generate_delegate_trait | |
FIXME @ revisions: wasm | ui/abi/compatibility | |
FIXME @[wasm] compile-flags: --target wasm32-unknown-unknown | ui/abi/compatibility | |
FIXME @[wasm] needs-llvm-components: webassembly | ui/abi/compatibility | |
FIXME @alibektas : "locality" is according to ra that, which is simply in the file system | tools/rust-analyzer/crates/rust-analyzer/tests/slow-tests/ratoml | |
FIXME @alibektas : Inner macro_call is not seen as such. So this doesn't work | tools/rust-analyzer/crates/ide-assists/src/handlers/toggle_macro_delimiter | |
FIXME @alibektas : Server's health uses error sink but in other places it is not used atm | tools/rust-analyzer/crates/rust-analyzer/src/config | |
FIXME @alibektas : This is silly. There is no reason to use VfsPaths when there is SourceRoots. But how | tools/rust-analyzer/crates/rust-analyzer/src/global_state | |
FIXME @alibektas : This is the only config that is confusing. If it's a proper configuration | tools/rust-analyzer/crates/rust-analyzer/src/config | |
FIXME @alibektas : This test is atm not valid | tools/rust-analyzer/crates/rust-analyzer/tests/slow-tests/ratoml | |
FIXME @alibektas : What happens to errors without logging? | tools/rust-analyzer/crates/rust-analyzer/src/cli/scip | |
FIXME Accept something like the following in the macro call instead | tools/rust-analyzer/crates/hir/src/diagnostics | |
FIXME Can sometimes happen, see rust-lang/rust#70531 | rustc_codegen_cranelift/src/base | Closed |
FIXME Does this need an example? | rustc_const_eval/src/const_eval/valtrees | |
FIXME Don't force the size to a multiple of <abi_align> bytes once Cranelift gets | rustc_codegen_cranelift/src/common rustc_codegen_cranelift/src/common | |
FIXME Don't silently drop the hrtb lifetimes here | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME Error E0071, expected struct, variant or union type, found enum `Foo` | tools/rust-analyzer/crates/hir-ty/src/infer tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME Given the current state of the compiler its expected that we cycle here | ui/const-generics/issues/issue-83765 | |
FIXME Merge `valtree_to_const_value` and `valtree_into_mplace` into one function | rustc_const_eval/src/const_eval/valtrees | |
FIXME Need to provide a span to `eval_to_valtree` | rustc_const_eval/src/const_eval/valtrees | |
FIXME Once unwinding is supported and Cranelift supports marking blocks as cold, do | rustc_codegen_cranelift/src/base | |
FIXME Once valtrees are available we can directly use the bytes | rustc_pattern_analysis/src/constructor | |
FIXME Remove this, we have this information in the HIR now | tools/rust-analyzer/crates/ide-db/src/syntax_helpers/format_string_exprs | |
FIXME Report unreachable arms | tools/rust-analyzer/crates/hir-ty/src/diagnostics/expr | |
FIXME Safe `#[target_feature]` functions are not assignable to safe fn pointers (RFC 2396) | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | Closed |
FIXME This needs layout computation to be correct. It will highlight | tools/rust-analyzer/crates/hir/src/semantics | |
FIXME This should compile, but it currently doesn't | ui/type-alias-impl-trait/auto-trait-leakage3 | |
FIXME Update this when vec_into_raw_parts is stabilized | alloc/src/string alloc/src/string alloc/src/vec/mod alloc/src/vec/mod alloc/src/vec/mod alloc/src/vec/mod core/src/intrinsics/mod | |
FIXME ^ Should not error in the future with implicit dtors, only manually implemented ones | ui/nll/maybe-initialized-drop-implicit-fragment-drop | |
FIXME ^ This currently errors and it should not | ui/nll/maybe-initialized-drop-with-uninitialized-fragments | |
FIXME `Value` should properly support pairs in `Immediate`... but currently | rustc_mir_transform/src/known_panics_lint | |
FIXME actually do nontemporal stores if requested (but do not just emit MOVNT on x86; | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME actually we maybe should also accept unknown guidance here | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | |
FIXME add .eh_frame unwind info directives | rustc_codegen_cranelift/src/inline_asm rustc_codegen_cranelift/src/inline_asm | |
FIXME add a context type here? | tools/rust-analyzer/crates/hir-ty/src/method_resolution | |
FIXME add and use emit_small_memcmp | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME add installer support for cg_clif once it is ready to be distributed on | bootstrap/src/core/build_steps/dist | |
FIXME also map the types in the adjustments | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | |
FIXME applies to match as well | tools/rust-analyzer/crates/ide-assists/src/handlers/convert_bool_then | |
FIXME auto detect all cargo workspaces | tools/tidy/src/deps | |
FIXME avoid copy and patch if src, patches and target are unchanged | rustc_codegen_cranelift/build_system/prepare | |
FIXME avoid intermediate `CValue` before calling `adjust_arg_for_abi` | rustc_codegen_cranelift/src/abi/mod | |
FIXME avoid this extra copy to the stack and directly write to the final | rustc_codegen_cranelift/src/constant | |
FIXME baz() should be an exact type match | tools/rust-analyzer/crates/ide-completion/src/render | |
FIXME before stabilization: Should we expose this as a `hard-float` target feature instead of | rustc_target/src/target_features | |
FIXME better handling of sign | rustc_codegen_cranelift/src/debuginfo/emit | |
FIXME better-encapsulate meta_item (don't directly access `node`) | rustc_incremental/src/assert_dep_graph | |
FIXME binary modules are not supported in tests properly | tools/rust-analyzer/crates/ide-completion/src/completions/mod_ | |
FIXME call once for each target and pass result around in struct | rustc_codegen_cranelift/build_system/rustc_info | |
FIXME can panic here | rustc_errors/src/lock rustc_errors/src/lock | |
FIXME change this to a const fn by also making List::empty a const fn | rustc_middle/src/mir/statement | |
FIXME change to version 5 once the gdb and lldb shipping with the latest debian | rustc_codegen_cranelift/src/debuginfo/mod | |
FIXME check ABI: Intrinsics are not coercible to function pointers | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | |
FIXME check other workspaces too | tools/tidy/src/extdeps | |
FIXME check that all passed in tests actually exist | rustc_codegen_cranelift/build_system/main | |
FIXME check-pass | ui/consts/unstable-const-fn-in-libcore ui/traits/const-traits/const-closure-parse-not-item ui/traits/const-traits/const-closure-trait-method ui/traits/const-traits/const-closures | |
FIXME consider asking the input slice to be sorted to avoid | rustc_middle/src/ty/context rustc_middle/src/ty/context | |
FIXME convert to using rewrite style rather than visitor | tools/rustfmt/src/items | |
FIXME correctly handle unaligned_volatile_load | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME correctly handle unaligned_volatile_store | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME correctly handle unalignedness | rustc_codegen_cranelift/src/intrinsics/llvm_x86 | |
FIXME deal with error | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | |
FIXME deduplicate with add_dynamic_crate | rustc_codegen_ssa/src/back/link | |
FIXME diagnostic | tools/rust-analyzer/crates/hir-ty/src/infer tools/rust-analyzer/crates/hir-ty/src/infer tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME do proper abi handling instead of expecting the pass mode to be identical | rustc_codegen_cranelift/src/main_shim | |
FIXME do this properly | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/type_mismatch | |
FIXME doesn't work with non-powers-of-two, yet | portable-simd/crates/core_simd/tests/masks | |
FIXME don't panic when a worker thread panics | rustc_codegen_cranelift/src/concurrency_limiter | |
FIXME edition | tools/rust-analyzer/crates/ide/src/lib | |
FIXME emit_small_memcpy | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME emit_small_memmove | rustc_codegen_cranelift/src/intrinsics/mod rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME emscripten does not support i128 | ui/numbers-arithmetic/saturating-float-casts-impl ui/numbers-arithmetic/saturating-float-casts-impl ui/numbers-arithmetic/saturating-float-casts-impl ui/numbers-arithmetic/saturating-float-casts-impl ui/numbers-arithmetic/saturating-float-casts-impl ui/numbers-arithmetic/saturating-float-casts-impl | |
FIXME fix `#[linkage = "extern_weak"]` without this | rustc_codegen_cranelift/build_system/tests | |
FIXME for future hackers: investigate whether this is | rustc_borrowck/src/type_check/liveness/trace | |
FIXME format modules in this style | tools/rustfmt/src/items | |
FIXME fragment numbering | tools/rust-analyzer/crates/ide/src/doc_links | |
FIXME generalize vector types | rustc_codegen_cranelift/src/intrinsics/llvm_aarch64 | |
FIXME get rid of this with valtrees | rustc_middle/src/query/mod | |
FIXME handle `-Ctarget-cpu=native` | rustc_codegen_cranelift/src/driver/aot | |
FIXME handle attribute expansion | tools/rust-analyzer/crates/hir/src/source_analyzer | |
FIXME handle constraints | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | |
FIXME handle diagnostic | tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span | |
FIXME handle the case where the function was made private to the | rustc_codegen_cranelift/src/global_asm | |
FIXME handle vendoring for source tarballs before removing the --skip-test below | bootstrap/src/core/build_steps/test | |
FIXME ideally this shouldn't use unwrap | rustc_hir_typeck/src/fn_ctxt/mod | |
FIXME if context.config.indent_style() == Visual, but we run out | tools/rustfmt/src/expr | |
FIXME impl From<ExitCode> for ExitStatus and then test that here too; | std/src/sys/pal/unix/process/process_common/tests | |
FIXME implement 128bit atomics | rustc_codegen_cranelift/src/intrinsics/mod rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME implement black_box semantics | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME implement debuginfo for wide pointers | rustc_codegen_cranelift/src/debuginfo/types | |
FIXME implement fcvt_to_*int_sat.i8/i16 | rustc_codegen_cranelift/src/cast | |
FIXME implement remaining types and add unreachable!() to the fallback branch | rustc_codegen_cranelift/src/debuginfo/types | |
FIXME implement these | tools/rust-analyzer/crates/hir-ty/src/display | |
FIXME implement unwinding | rustc_codegen_cranelift/src/base | |
FIXME implement variadics in cranelift | rustc_codegen_cranelift/src/abi/mod rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME improve docs for `StaticRef` by distinguishing it from `NamedConst` | rustc_middle/src/thir | |
FIXME it would be better to not match `debug_assert*!` macro invocations | tools/rust-analyzer/crates/ide-assists/src/handlers/generate_documentation_template | |
FIXME legalize `icmp_imm.i128` in Cranelift | rustc_codegen_cranelift/src/common | |
FIXME link to `pointer::offset` when it hits stable | tools/rust-analyzer/crates/hir-ty/src/mir | |
FIXME macro crates are not up for this yet, too much | rustc_lint/src/lib | |
FIXME make check_types work with other bodies | tools/rust-analyzer/crates/hir-ty/src/tests/traits | |
FIXME make the copy actually volatile when using emit_small_mem{cpy,move} | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME make the memset actually volatile when switching to emit_small_memset | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME make this a BTreeMap | tools/rust-analyzer/crates/hir-ty/src/traits | |
FIXME make this translatable | rustc_resolve/src/macros | |
FIXME make this translatable as well? | rustc_const_eval/src/interpret/validity | |
FIXME make this work, currently fails due to pattern recovery eating the `:` | tools/rust-analyzer/crates/ide-completion/src/context/tests | |
FIXME maybe run finish even when a fatal error occured? or at least tcx.alloc_self_profile_query_strings()? | rustc_interface/src/passes | |
FIXME merge spans | tools/rust-analyzer/crates/hir-expand/src/builtin/fn_macro | |
FIXME move all uses to `simd_reduce` | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME need to record an obligation here | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | |
FIXME obligation cannot be fulfilled => diagnostic | tools/rust-analyzer/crates/hir-ty/src/infer/unify | |
FIXME once abi_unsupported_vector_types is a hard error disable the foo test when the respective | rustc_codegen_cranelift/example/std_example | |
FIXME once unwinding is supported, change this to actually catch panics | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME only encode signature for ctor_def_id | rustc_metadata/src/rmeta/encoder | |
FIXME order of attributes should not matter | tools/rust-analyzer/crates/ide-db/src/imports/merge_imports | |
FIXME potentially resolve assoc type | tools/rust-analyzer/crates/hir-ty/src/infer tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME properly handle `RestPat` | tools/rust-analyzer/crates/hir-def/src/body/lower | |
FIXME reduce usage of custom test case commands | rustc_codegen_cranelift/build_system/tests | |
FIXME remove | rustc_codegen_cranelift/src/value_and_place rustc_codegen_cranelift/src/value_and_place | |
FIXME remove dependency on this from the Rust ABI. cc bytecodealliance/wasmtime#9510 | rustc_codegen_cranelift/src/lib rustc_codegen_cranelift/src/lib | Closed |
FIXME remove once drops are working | ui/sanitizer/cfi/closures | |
FIXME remove once vendoring is handled | bootstrap/src/core/build_steps/test | |
FIXME replace with core::ffi::c_size_t once stabilized | rustc_codegen_cranelift/src/compiler_builtins | |
FIXME report error (ambiguous associated type) | tools/rust-analyzer/crates/hir-ty/src/lower tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME requires db to resolve line index, THIS IS NOT INCREMENTAL | tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span | |
FIXME requires db to resolve the ast id, THIS IS NOT INCREMENTAL | tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span | |
FIXME requires db, looks up the parent call site | tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span | |
FIXME requires db, needs special handling wrt fixup spans | tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span | |
FIXME requires db, returns the top level call site | tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span | |
FIXME requires optimized MIR | rustc_middle/src/ty/sty | |
FIXME resolve obligations as well (use Guidance if necessary) | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME return the actually used target features. this is necessary for #[cfg(target_feature)] | rustc_codegen_cranelift/src/lib | |
FIXME rust-lang/rust#64319, rust-lang/rust#64872 | rustc_middle/src/ty/context | Closed Closed |
FIXME rust-lang/rust#64319, rust-lang/rust#64872: We want | rustc_metadata/src/rmeta/decoder/cstore_impl | Closed Closed |
FIXME rustc normalizes assoc types in the sig here, not sure if necessary | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | |
FIXME saturate? | rustc_codegen_cranelift/src/intrinsics/llvm_aarch64 | |
FIXME set fundamental flags correctly | tools/rust-analyzer/crates/hir-ty/src/chalk_db | |
FIXME set program arguments somehow | rustc_codegen_cranelift/src/main_shim | |
FIXME setup implicit context in TLS before calling self | rustc_expand/src/base rustc_expand/src/base | |
FIXME should we know the mutability here, when autoref is `None`? | tools/rust-analyzer/crates/hir-ty/src/method_resolution | |
FIXME split this into multiple, self-contained tests | tools/rustfmt/tests/source/multiple tools/rustfmt/tests/target/multiple | |
FIXME split this one out once saturating is implemented | rustc_codegen_cranelift/src/intrinsics/llvm_aarch64 | |
FIXME still use translatable diagnostics | rustc_middle/src/mir/interpret/error | |
FIXME support this for `enum`s by either using DWARF's | rustc_middle/src/mir/mod | |
FIXME support unregistering unwind tables once cranelift-jit supports deallocating | rustc_codegen_cranelift/src/debuginfo/unwind | |
FIXME the correct implementation is not clear. Waiting for a real world use case at rust-lang/libs-team/issues/230 | core/src/num/saturating | |
FIXME the span here is wrong, sould be pointing at the line below, not above | ui/consts/interior-mut-const-via-union | |
FIXME there are other cases that we could trace | rustc_borrowck/src/diagnostics/region_name | |
FIXME there must be a nicer way to write this condition | tools/rust-analyzer/crates/hir-def/src/nameres/path_resolution tools/rust-analyzer/crates/hir-def/src/nameres/path_resolution | |
FIXME there must be no acc param for integer vectors | rustc_codegen_cranelift/src/intrinsics/simd rustc_codegen_cranelift/src/intrinsics/simd rustc_codegen_cranelift/src/intrinsics/simd rustc_codegen_cranelift/src/intrinsics/simd | |
FIXME this can be an exact division | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME this could be [[a]] | mir-opt/reference_prop mir-opt/reference_prop mir-opt/reference_prop mir-opt/reference_prop mir-opt/reference_prop mir-opt/reference_prop | |
FIXME this could happen in array size expressions, once we're checking them | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME this is a false negative | tools/clippy/tests/ui/useless_conversion_try | |
FIXME this line creates a dependency between borrowck and typeck | rustc_borrowck/src/universal_regions | |
FIXME this one could be done better | tools/rustfmt/tests/source/expr tools/rustfmt/tests/target/expr | |
FIXME this says "null pointer" when null but we need translate | rustc_const_eval/src/interpret/validity | |
FIXME this should be configurable | rustc_codegen_cranelift/src/debuginfo/mod | |
FIXME this should be more descriptive i.e. CapturePlace instead of CapturedVar | rustc_const_eval/src/interpret/validity | |
FIXME this simply uses the Debug impl, but we could probably do better by converting both | rustc_middle/src/ty/consts/int | |
FIXME trap on `ctlz_nonzero` with zero arg | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME trap on `cttz_nonzero` with zero arg | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME trap on inexact | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME trap on overflow for the Unchecked versions | rustc_codegen_cranelift/src/num | |
FIXME unify with fn_sig_for_fn instead of doing lowering twice, maybe | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME use SHT_X86_64_UNWIND for .eh_frame | rustc_codegen_cranelift/src/debuginfo/object | |
FIXME use a better heuristic than Spans | rustc_borrowck/src/diagnostics/conflict_errors | |
FIXME use a compiler fence once Cranelift supports it | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME use a greater base ($ty) for the long division | core/src/num/bignum | |
FIXME use a proper fn ptr type | tools/miri/src/eval | |
FIXME use emit_small_memset | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME use emit_small_memset where possible | rustc_codegen_cranelift/src/base | |
FIXME use the actual type layout | rustc_codegen_cranelift/src/debuginfo/mod | |
FIXME use this when trying to resolve everything at the end | tools/rust-analyzer/crates/hir-ty/src/infer/unify | |
FIXME use vector instructions when possible | rustc_codegen_cranelift/src/intrinsics/llvm_x86 rustc_codegen_cranelift/src/intrinsics/llvm_x86 rustc_codegen_cranelift/src/intrinsics/simd rustc_codegen_cranelift/src/intrinsics/simd rustc_codegen_cranelift/src/intrinsics/simd rustc_codegen_cranelift/src/intrinsics/simd | |
FIXME validate | rustc_codegen_cranelift/src/intrinsics/simd | |
FIXME we can also infer bounds on associated types | rustc_lint/src/builtin | |
FIXME we do a lot of allocation to make our own representation | tools/rustfmt/src/imports | |
FIXME we need to revisit this for #67176 | rustc_mir_transform/src/known_panics_lint rustc_mir_transform/src/known_panics_lint | Open |
FIXME we probably shouldn't pass this but instead pass an explicit list | rustc_target/src/spec/base/wasm | |
FIXME we should have testing infra for multi level expansion tests | tools/rust-analyzer/crates/hir-def/src/macro_expansion_tests/mbe/regression | |
FIXME we should use the type checker for this | tools/rust-analyzer/crates/hir-ty/src/diagnostics/expr | |
FIXME what about transient conditions like `ENOMEM`? | std/src/sys/pal/unix/fs | |
FIXME what is the correct implementation here? see discussion rust-lang/rust/pull/87921#discussion_r695870065 | core/src/num/saturating | |
FIXME work around filename too long errors | rustc_codegen_cranelift/src/pretty_clif | |
FIXME would be nice to reuse the lists API for this, but because each separator | tools/rustfmt/src/pairs | |
FIXME wrong import | tools/rust-analyzer/crates/ide-assists/src/handlers/auto_import tools/rust-analyzer/crates/ide-assists/src/handlers/auto_import | |
FIXME ~^ ERROR cannot call | ui/consts/unstable-const-fn-in-libcore | |
FIXME ~^ ERROR cannot match on `str` in constant functions | ui/traits/const-traits/match-non-const-eq | |
FIXME ~^ ERROR destructor of | ui/consts/unstable-const-fn-in-libcore ui/traits/const-traits/const-drop ui/traits/const-traits/const-drop | |
FIXME ~^ ERROR the trait bound | ui/traits/const-traits/issue-102985 ui/traits/const-traits/issue-88155 | |
FIXME ~^ ERROR: the trait bound `T: ~const Sup` is not satisfied | ui/traits/const-traits/specializing-constness-2 | |
FIXME ~| ERROR cannot call non-const closure in constants | ui/traits/const-traits/issue-102985 | |
FIXME ~| ERROR cannot call non-const function | ui/traits/const-traits/issue-88155 | |
FIXME ~| ERROR destructor of | ui/consts/unstable-const-fn-in-libcore | |
FIXME ~| ERROR the trait bound | ui/traits/const-traits/issue-102985 | |
FIXME! consider allowing users to specify paths to multiple files, or to a directory | tools/miri/src/eval | |
FIXME(#100717) | rustc_parse/src/parser/attr rustc_session/src/errors | Open |
FIXME(#100717): early errors aren't translated at the moment, so this is fine, but it will | rustc_session/src/session | Open |
FIXME(#100717): migrate users of this to proper localization | rustc_parse/src/parser/pat | Open |
FIXME(#100717): needs variant for each `ItemKind` (instead of using `ItemKind::descr()`) | rustc_parse/src/parser/item | Open |
FIXME(#100717): remove | rustc_macros/src/diagnostics/utils | Open |
FIXME(#100717): replace with a `Option<Span>` when subdiagnostic supports that | rustc_trait_selection/src/errors | Open |
FIXME(#100717): support `Option<Span>` on `primary_span` like in the | rustc_macros/src/diagnostics/subdiagnostic | Open |
FIXME(#101695): Test bool's `impls` include "Local for bool" | rustdoc-json/impls/local_for_local_primitive | Closed |
FIXME(#101728): change this when type ascription syntax is stabilized again | rustc_lint/src/if_let_rescope | Open |
FIXME(#101728): enable rewrite when type ascription is | rustc_borrowck/src/diagnostics/explain_borrow | Open |
FIXME(#101728): enable rewrite when type ascription is stabilized again | rustc_borrowck/src/diagnostics/explain_borrow | Open |
FIXME(#102522) Just iterate on attrs once that iteration order matches HIR's | rustc_lint/src/levels | Closed |
FIXME(#103640): Should we handle the case where `ty` is a projection? | rustc_hir_analysis/src/collect | Open |
FIXME(#104478, #104477): This is a hack for backward-compatibility | rustc_borrowck/src/type_check/canonical | Open Open |
FIXME(#104767): Should we handle bound regions here? | rustc_hir_typeck/src/fn_ctxt/mod | Open |
FIXME(#109628): We shouldn't have existential variables in implied bounds | rustc_infer/src/infer/outlives/env | Open |
FIXME(#109628): panic in this case once the issue is fixed | rustc_borrowck/src/type_check/free_region_relations rustc_trait_selection/src/traits/outlives_bounds | Open |
FIXME(#110395) | alloc/tests/const_fns core/tests/atomic core/tests/bool core/tests/cell core/tests/char core/tests/cmp core/tests/convert core/tests/hash/mod core/tests/hash/mod core/tests/hash/sip core/tests/lazy core/tests/nonzero core/tests/num/const_from core/tests/option core/tests/option core/tests/option core/tests/option core/tests/option core/tests/option core/tests/option core/tests/time core/tests/time core/tests/time | Closed |
FIXME(#11084): This could be replaced with Iterator::scan when this | core/src/option | Closed |
FIXME(#110897): maybe panic on recursive initialization | std/src/sys/thread_local/statik | Open |
FIXME(#111101): Incorporate the explicit predicates of the item here | rustdoc/clean/auto_trait | Open |
FIXME(#111564): Is this the right behaviour? | rustdoc-json/impls/impl_item_visibility rustdoc-json/impls/impl_item_visibility_show_hidden rustdoc-json/impls/impl_item_visibility_show_hidden rustdoc-json/impls/impl_item_visibility_show_private | Open |
FIXME(#112480) MSVC and rustc disagree on minimum stack alignment on x86 Windows | rustc_mir_transform/src/check_alignment | Open |
FIXME(#112534) Reimplementation of `find`, as it uses indexing, which can (and will in | tools/clippy/clippy_lints/src/min_ident_chars | Open |
FIXME(#112651) `rvalue` may have a subtype to `local`. We can only mark | rustc_mir_transform/src/gvn | Open |
FIXME(#112651): This can be changed to an ICE afterwards | rustc_codegen_ssa/src/mir/locals | Open |
FIXME(#112651): This can be removed afterwards | rustc_mir_transform/src/ssa | Open |
FIXME(#112651): This can be removed afterwards. Also update the module description | rustc_mir_transform/src/dest_prop | Open |
FIXME(#113634) We should inject this during post-processing like | rustc_builtin_macros/src/standard_library_imports | Closed |
FIXME(#114050) ~| HELP use `Option::as_ref` to convert `Option<String>` to `Option<&String>` | ui/suggestions/copied-and-cloned | Open |
FIXME(#114479): LLVM miscompiles loading and storing `f32` and `f64` when SSE is disabled | assembly/x86-return-float | Open |
FIXME(#114479): LLVM miscompiles loading and storing `f32` and `f64` when SSE is disabled on | ui/abi/numbers-arithmetic/return-float | Open |
FIXME(#115215): After #115025 get's merged this might not be necessary | rustc_codegen_ssa/src/mir/locals | Closed Closed |
FIXME(#115869): support -Z ignore-directory-in-diagnostics-source-blocks | rustc_errors/src/annotate_snippet_emitter_writer | Closed |
FIXME(#117097): backtrace (possibly unwinding mechanism) seems to be different on at least | ui/runtime/backtrace-debuginfo | Open |
FIXME(#118552): We should probably feed def_span eagerly on def-id creation | rustc_passes/src/lang_items | Open |
FIXME(#118761) Should be run-pass once the labels on drop are compatible | ui/sanitizer/cfi/drop-no-principal | Closed |
FIXME(#118965): We don't canonicalize the static lifetimes that appear in the | rustc_infer/src/infer/canonical/canonicalizer | Open |
FIXME(#11924) allow zero-length arrays? | rustc_ty_utils/src/representability | Open |
FIXME(#120456) - is `swap_remove` correct? | rustc_borrowck/src/diagnostics/mod rustc_borrowck/src/used_muts rustc_codegen_ssa/src/target_features rustc_const_eval/src/const_eval/machine rustc_const_eval/src/interpret/intern rustc_errors/src/emitter rustc_errors/src/lib rustc_errors/src/lib rustc_errors/src/lib rustc_hir_typeck/src/fn_ctxt/_impl rustc_infer/src/infer/opaque_types/table rustc_lint_defs/src/lib rustc_mir_transform/src/dest_prop rustc_passes/src/stability rustc_passes/src/stability rustc_resolve/src/check_unused rustc_trait_selection/src/error_reporting/traits/mod | Open |
FIXME(#120606): `AutoTraitFinder` can actually leak placeholder regions which feels | rustdoc/clean/auto_trait | Open |
FIXME(#122848) Remove only-linux once OSX CFI binaries work | ui/sanitizer/cfi/async-closures ui/sanitizer/cfi/closures ui/sanitizer/cfi/complex-receiver ui/sanitizer/cfi/coroutine ui/sanitizer/cfi/fn-ptr ui/sanitizer/cfi/self-ref ui/sanitizer/cfi/sized-associated-ty ui/sanitizer/cfi/supertraits ui/sanitizer/cfi/virtual-auto | Open |
FIXME(#122848) Remove only-linux once OSX CFI binaries works | ui/sanitizer/cfi/drop-no-principal | Open |
FIXME(#122848): Remove only-linux when fixed | ui/sanitizer/cfi/drop-in-place | Open |
FIXME(#12309): An unfortunate side-effect of capturing the test | rustdoc/doctest | Closed |
FIXME(#124118) Actually instrument if-let and let-chains for branch coverage | coverage/branch/if-let | Open |
FIXME(#124118) Actually instrument let-else for branch coverage | coverage/branch/let-else | Open |
FIXME(#124118) Actually instrument match arms for branch coverage | coverage/branch/match-arms | Open |
FIXME(#125009): Not-local should probably consider same Cargo workspace | rustdoc/passes/strip_aliased_non_local | Open |
FIXME(#125431): `ReVar` shouldn't reach here | rustc_trait_selection/src/error_reporting/infer/region | Open |
FIXME(#126180): This test can only run on `x86_64-gnu-debug`, because that CI job sets | run-make/wasm-override-linker/rmake | Closed |
FIXME(#126797): "d0" should work with `i64` and `f64` even when `d32` is disabled | assembly/asm/arm-types | Closed |
FIXME(#127030): `ConstParamHasTy` has bad interactions with | rustc_mir_transform/src/inline | Closed |
FIXME(#127234): Coverage instrumentation currently doesn't handle inlined | rustc_mir_transform/src/check_inline | Closed |
FIXME(#127877): certain experimental targets fail with creating a 'LLVM TargetMachine' in CI, so | run-make/print-target-list/rmake | Closed |
FIXME(#128911): still flakey on i686-mingw | run-make/dump-ice-to-disk/rmake run-make/unstable-feature-usage-metrics/rmake | Open |
FIXME(#128955) remove a couple of months after #128936 gets merged in case | rustc_codegen_llvm/src/back/archive | Open Closed |
FIXME(#129117): Windows rlib + `-Cdebuginfo=2` + `-Z remap-cwd-prefix=.` seems | run-make/reproducible-build/rmake | Open |
FIXME(#129153): instead of all the ad-hoc `download-ci-llvm` checks that follow | bootstrap/src/core/config/config | Closed |
FIXME(#129461): We are time-boxing this code in the compiler. It'll start failing | rustc_trait_selection/src/error_reporting/infer/need_type_info | Open |
FIXME(#129952): We probably want a more principled approach here | rustc_borrowck/src/universal_regions | Open |
FIXME(#130766): When the `#[coverage(..)]` attribute is stabilized | ui/coverage-attr/bad-attr-ice | Closed |
FIXME(#131436): on macOS rustc is still reporting the std broken pipe io error panick but it | run-make/broken-pipe-no-ice/rmake | Open |
FIXME(#132279): @lcnr believes that we may want to support coroutines | rustc_mir_transform/src/coroutine | Open |
FIXME(#132279): Forking with `TypingMode::non_body_analysis` is a bit questionable | rustc_trait_selection/src/traits/coherence | Open |
FIXME(#132279): In case we're in a body, we should use a typing | rustc_lint/src/context | Open |
FIXME(#132279): It feels wrong to use `non_body_analysis` here given that we're | rustc_borrowck/src/region_infer/opaque_types | Open |
FIXME(#132279): Once `PostBorrowckAnalysis` is supported in the old solver, this branch should be removed | rustc_hir_analysis/src/check/check | Open |
FIXME(#132279): Once we've got a typing mode which reveals opaque types using the HIR | rustc_const_eval/src/check_consts/qualifs | Open |
FIXME(#132279): This erases the `defining_opaque_types` as it isn't possible | rustc_infer/src/infer/mod | Open |
FIXME(#132279): This function is quite weird in post-analysis | rustc_infer/src/infer/mod | Open |
FIXME(#132279): This is still incorrect as we treat opaque types | rustc_trait_selection/src/traits/select/mod | Open |
FIXME(#132279): This is used during the phase transition from analysis | rustc_mir_transform/src/add_moves_for_packed_drops rustc_mir_transform/src/elaborate_drops rustc_mir_transform/src/known_panics_lint rustc_mir_transform/src/post_analysis_normalize | Open |
FIXME(#132279): This likely causes us to incorrectly handle opaque types in their | rustc_hir_analysis/src/check/intrinsicck | Open |
FIXME(#132279): This method should not be used as in the future | rustc_middle/src/ty/layout | Open |
FIXME(#132279): This should be able to reveal opaque | rustc_mir_build/src/builder/mod | Open |
FIXME(#132279): This should be removed as it causes us to incorrectly | rustc_trait_selection/src/infer | Open |
FIXME(#132279): This will be unnecessary once we have a TypingMode which supports revealing | rustc_pattern_analysis/src/rustc | Open |
FIXME(#132279): Using `Ty::is_sized` causes us to incorrectly handle opaques here | rustc_borrowck/src/type_check/mod | Open |
FIXME(#132279): Using `non_body_analysis` here feels wrong | rustc_hir_typeck/src/upvar rustc_hir_typeck/src/upvar | Open |
FIXME(#132279): We likely want to be able to use the hidden types of | rustc_mir_build/src/builder/mod | Open |
FIXME(#132279): We likely want to reveal opaques during post borrowck analysis | rustc_trait_selection/src/traits/normalize rustc_trait_selection/src/traits/normalize | Open |
FIXME(#132279): We should assert that the value does not contain any placeholders | rustc_middle/src/ty/mod | Open |
FIXME(#132279): We're in a body, should handle opaques | rustc_mir_build/src/thir/pattern/check_match | Open |
FIXME(#132279): We're in a body, we should use a typing | rustc_mir_build/src/thir/cx/mod | Open |
FIXME(#132279): `TypingMode::non_body_analysis` is a bit questionable here as it | rustc_trait_selection/src/traits/coherence | Open |
FIXME(#132279): we should reveal the opaques defined in the body during analysis | rustc_middle/src/mir/mod | Open |
FIXME(#132279): we're clearly in a body here | rustc_mir_build/src/check_tail_calls rustc_mir_build/src/check_unsafety | Open |
FIXME(#132279): we're in a body here | rustc_passes/src/liveness | Open |
FIXME(#132279): what is this, why are we using an empty environment here | rustc_middle/src/mir/mod | Open |
FIXME(#132279, generic_const_exprs): Using `try_normalize_erasing_regions` here | rustc_hir_typeck/src/writeback | Open |
FIXME(#132309): add a proper `supports-crate-type` directive | ui/invalid-compile-flags/crate-type-flag | Open |
FIXME(#132309): dylib crate type is not supported on wasm; we need a proper | ui/lint/non-snake-case/lint-non-snake-case-crate | Open |
FIXME(#132395): Can this be none even when coverage is enabled? | rustc_codegen_llvm/src/coverageinfo/mapgen | Closed |
FIXME(#132436): Even though this doesn't ICE, it still produces coverage | coverage/auxiliary/inline_mixed_helper | Open |
FIXME(#132437): We currently don't test this in coverage-run mode, because | coverage/inline_mixed | Closed |
FIXME(#132514): Is needs-llvm-components actually necessary for this test? | run-make/print-target-cpus-native/rmake | Closed |
FIXME(#132514): This prints the LLVM target string, which can be | rustc_codegen_llvm/src/llvm_util | Closed |
FIXME(#133107): this is temporarily marked as `only-64bit` because of course 32-bit msvc has | debuginfo/numeric-types | Closed |
FIXME(#133381): alt rustc builds currently do *not* have rustc debug assertions | bootstrap/src/core/config/config | Closed |
FIXME(#133480): this has been randomly failing on `x86_64-mingw` due to linker hangs or | run-make/avr-rjmp-offset/rmake | Open |
FIXME(#133919): Once Rust upgrades to LLVM 20, remove this | ui/codegen/target-cpus | Open |
FIXME(#134510): auto-registering revision names as check prefix is a bit sketchy, and | tools/compiletest/src/runtest | Open |
FIXME(#135037): not robust against symlinks, lacks sanity test coverage | tools/run-make-support/src/assertion_helpers/mod | Open |
FIXME(#13846) this should be enabled for windows | rustc_target/src/spec/base/windows_gnu | Closed |
FIXME(#1539): implement for non-sugared macros | tools/rustfmt/src/macros | Closed |
FIXME(#16847): This code is non-ideal because all these subtype | rustc_infer/src/infer/relate/generalize | Closed |
FIXME(#17451) Use `expected: f128` once `f128` is stabilised | tools/rust-analyzer/crates/syntax/src/ast/token_ext | Closed |
FIXME(#17451): Add `f16` and `f128` intrinsics | tools/rust-analyzer/crates/hir-ty/src/mir/eval/shim | Closed |
FIXME(#17451): Add `f16` and `f128` once they are stabilised | tools/rust-analyzer/crates/hir-ty/src/layout/tests | Closed |
FIXME(#17451): Add `f16` and `f128` tests once intrinsics are added | tools/rust-analyzer/crates/hir-ty/src/consteval/tests/intrinsics | Closed |
FIXME(#17451): Replace with builtins once they are stabilised | tools/rust-analyzer/crates/hir-ty/src/display tools/rust-analyzer/crates/hir-ty/src/display | Closed |
FIXME(#17451): Switch to builtin `f16` and `f128` once they are stable | tools/rust-analyzer/crates/hir-ty/src/mir/eval | Closed |
FIXME(#17451): Use builtin types once stabilised | tools/rust-analyzer/crates/hir-def/src/hir | Closed |
FIXME(#18285): we cannot include the current position because | ui/runtime/backtrace-debuginfo | Closed |
FIXME(#18741) -- this is almost but not quite the same as the | rustc_hir_typeck/src/place_op | Open |
FIXME(#20): other stuff for parity with make tidy | tools/rustfmt/src/formatting | |
FIXME(#20041) | rustc_hir_analysis/src/collect/predicates_of | Open |
FIXME(#20304) For now, I am caching here, which is good, but it | rustc_trait_selection/src/traits/project | Open |
FIXME(#2055): rustfmt fails to format when there are comments between trait bounds | tools/rustfmt/src/items | Closed |
FIXME(#21): we're dropping potential comments in between the | tools/rustfmt/src/items | |
FIXME(#21232) | ui/borrowck/reassignment_immutable_fields | Closed |
FIXME(#23545): Uncomment the remaining tests | ui/numbers-arithmetic/num-wrapping ui/numbers-arithmetic/num-wrapping | Open |
FIXME(#2455): Reorder trait items | tools/rustfmt/src/reorder | Closed |
FIXME(#24570): add more info here (e.g., mode) | std/src/sys/pal/windows/fs | Closed |
FIXME(#24570): implement this for other Unix platforms | std/src/sys/pal/unix/fs | Closed |
FIXME(#2531): we should unify the comparison code here with the formatting | tools/rustfmt/src/imports | Closed |
FIXME(#26925) Remove in favor of `#[derive(Clone)]` | alloc/src/collections/binary_heap/mod alloc/src/collections/linked_list alloc/src/collections/vec_deque/iter core/src/slice/iter core/src/slice/iter core/src/slice/iter core/src/slice/iter core/src/slice/iter core/src/slice/iter core/src/slice/iter core/src/slice/iter core/src/slice/iter core/src/str/iter std/src/collections/hash/map std/src/collections/hash/map std/src/collections/hash/map | Open |
FIXME(#27438): Right now, the unit tests of `rustc_middle` don't refer to any actual functions | rustc_middle/src/tests | Open |
FIXME(#27579) RFC also considers adding trait | rustc_trait_selection/src/traits/wf | Closed |
FIXME(#27579): what amount of WF checking do we need for neg impls? | rustc_hir_analysis/src/check/wfcheck | Closed |
FIXME(#27840) these probably want their own | rustc_mir_build/src/builder/expr/category | Closed |
FIXME(#28160) there is an interesting semantics | rustc_mir_build/src/builder/expr/stmt | Closed |
FIXME(#29623) we could use PatKind::Range to rule | rustc_mir_build/src/builder/matches/test | Open |
FIXME(#29623). In some cases, we have some tricky choices to make. for | rustc_mir_build/src/builder/matches/test | Open |
FIXME(#31844): convert to an associated const once specialization supports that | core/src/iter/adapters/flatten | Open |
FIXME(#33000) -- it'd be better to use a dedicated | tools/compiletest/src/json | Closed |
FIXME(#33000) -- it'd be better to use a dedicated UI harness | tools/compiletest/src/json | Closed |
FIXME(#3441): post_snippet includes 'const' now | tools/rustfmt/src/lists | Closed |
FIXME(#34708): handle partially-dropped array/slice elements | rustc_mir_dataflow/src/elaborate_drops | Closed |
FIXME(#38501) This should preferably always be clean | incremental/hashes/trait_defs | Closed |
FIXME(#41044) -- not correct, need test | rustc_infer/src/infer/relate/lattice | Open |
FIXME(#41252) Remove "clang LLVM" if we can get GDB and LLVM to play nice | rustc_codegen_llvm/src/debuginfo/metadata | Open |
FIXME(#41710): what is the best way to model linear queries? | rustc_data_structures/src/steal | Open |
FIXME(#41968): Move this check to tidy? | tools/compiletest/src/runtest/incremental tools/compiletest/src/runtest/incremental | Closed |
FIXME(#42700) - Need to format self properly to | rustc_trait_selection/src/error_reporting/infer/nice_region_error/util | Open |
FIXME(#42703) - Need to handle certain cases here | rustc_trait_selection/src/error_reporting/infer/nice_region_error/util | Open |
FIXME(#42706) -- in some cases, we could do better here | rustc_middle/src/ty/context | Closed |
FIXME(#42800) | rustc_codegen_llvm/src/debuginfo/mod | Open |
FIXME(#42940): This should use the `FreeRegionsVisitor`, but that's | rustc_borrowck/src/type_check/opaque_types | Open |
FIXME(#43047) FIXME(#74731) We may eventually want to avoid relying on external | rustc_metadata/src/rmeta/encoder | Closed Open |
FIXME(#43348): Make libc adapt #[doc(cfg(...))] so we don't need these fake definitions here? | std/src/os/unix/net/addr std/src/os/unix/net/ancillary | Closed |
FIXME(#43408) always enable this once `lazy_normalization` is | rustc_hir_analysis/src/collect/generics_of | Open |
FIXME(#44232) we should warn that this isn't used | ui/feature-gates/issue-43106-gating-of-builtin-attrs ui/lint/lint-unknown-feature-default ui/lint/lint-unknown-feature | Open |
FIXME(#44232): the `used_features` table no longer exists, so we | rustc_passes/src/stability | Open |
FIXME(#44265) add tests for type-generic and const-genertic associated types | ui/generic-associated-types/parameter_number_and_kind_impl | Closed |
FIXME(#45727): As discussed in [this comment][c1], naively | rustc_hir_typeck/src/closure | Closed |
FIXME(#47949) Any use of this indicates a bug in rustc: we should never | ui/drop/dynamic-drop | Open |
FIXME(#48994) - could just be collected into an Option<Vec> | rustc_ast/src/ast | Open |
FIXME(#51525) -- the shorter notation `T::Assoc` winds up referencing `'static` here | ui/impl-trait/bound-normalization-pass ui/impl-trait/bound-normalization-pass | Closed |
FIXME(#53934): make machine-applicable again | rustc_lint/src/lints rustc_lint/src/lints rustc_lint/src/lints | Open |
FIXME(#54366) - We probably shouldn't allow #[thread_local] static mut to get a 'static lifetime | ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn | Open |
FIXME(#54571): This constant comes from user input (a | rustc_mir_build/src/builder/matches/test | Closed |
FIXME(#54943) This test targets the scenario where proving the WF requirements requires | ui/nll/issue-54943-3 | Closed |
FIXME(#54987) | ui/borrowck/assign_mutable_fields | Open |
FIXME(#57965): Make this work across function boundaries | rustc_mir_transform/src/check_call_recursion | Open |
FIXME(#59346): Figure out if we can _always_ print to stderr or not | rustc_errors/src/annotate_snippet_emitter_writer | Open |
FIXME(#59346): Is it ok to return None if there's no source_map? | rustc_errors/src/annotate_snippet_emitter_writer | Open |
FIXME(#59346): Not really sure when `fold` should be true or false | rustc_errors/src/annotate_snippet_emitter_writer | Open |
FIXME(#59346): Not sure how to map this level | rustc_errors/src/annotate_snippet_emitter_writer | Open |
FIXME(#59346): Not sure when this is the case and what | rustc_errors/src/annotate_snippet_emitter_writer rustc_errors/src/annotate_snippet_emitter_writer | Open |
FIXME(#623): - these aren't supported yet | ui/attributes/item-attributes | Closed |
FIXME(#63351): Concat trait in alloc/slice reexported in primitive page | tools/linkchecker/main | Closed |
FIXME(#63818): niches in coroutines are disabled | ui/async-await/async-drop ui/coroutine/discriminant ui/coroutine/discriminant | Open |
FIXME(#63818): niches in coroutines are disabled. Should be `assert_eq` | ui/coroutine/niche-in-coroutine | Open |
FIXME(#65833): We permit associated consts to have an `#[inline]` attribute with | rustc_passes/src/check_attr | Open |
FIXME(#65865) | tools/compiletest/src/runtest | Closed |
FIXME(#67563): Provide more context for these errors by displaying the spans inline | rustdoc/passes/lint/check_code_block_syntax | Closed |
FIXME(#68817) use `llvm.dbg.value` instead | rustc_codegen_ssa/src/mir/debuginfo | Open |
FIXME(#70334): this will generate legacy {{closure}}, {{impl}}, etc | rustc_hir/src/definitions | Open |
FIXME(#71723). This is because we infer at some point a value of | ui/generic-associated-types/issue-92096 | Open |
FIXME(#73154) Pure NLL checker without leak check accepts this test | ui/lub-glb/old-lub-glb-hr-noteq2 | Open |
FIXME(#73154): For now, we do leak check when coercing function | rustc_hir_typeck/src/demand rustc_trait_selection/src/error_reporting/infer/mod | Open |
FIXME(#73154): This is a hack. Currently LUB can generate | rustc_hir_typeck/src/coercion | Open |
FIXME(#73156): Handle source code coverage in const eval | rustc_const_eval/src/interpret/step | Open |
FIXME(#73156): Handle source code coverage in const eval, but note, if and when const | rustc_mir_transform/src/coverage/query | Open |
FIXME(#73933): Remove this eventually | rustc_expand/src/base | Open |
FIXME(#74563) support UFCS | rustdoc-ui/intra-doc/malformed-generics | Open |
FIXME(#74563): This gives precedence to `impl SomeItem` | rustdoc/passes/collect_intra_doc_links | Open |
FIXME(#74563): warn about ambiguity | rustdoc/passes/collect_intra_doc_links | Open |
FIXME(#75598): Direct use of these intrinsics improves codegen significantly at opt-level <= | core/src/ptr/mod | Closed |
FIXME(#78168) | ui/parser/block-no-opening-brace ui/parser/block-no-opening-brace | Open |
FIXME(#78544): MIR InstrumentCoverage: Improve coverage of `#[should_panic]` tests and | rustc_mir_transform/src/coverage/graph | Open |
FIXME(#78546): MIR InstrumentCoverage - Can the source_info.span for `FakeRead` | rustc_mir_transform/src/coverage/spans/from_mir | Open |
FIXME(#78591): Support both inner and outer attributes on the same item | rustc_resolve/src/rustdoc | Closed |
FIXME(#78800): This breaks because it's a blanket impl | rustdoc-ui/intra-doc/non-path-primitives | Open |
FIXME(#79417): Currently we have no way to offset doctest _columns_ | rustc_codegen_llvm/src/coverageinfo/mapgen/spans | Open |
FIXME(#79625): Consider improving MIR to provide the information needed, to avoid going back | rustc_mir_transform/src/coverage/mod | Open |
FIXME(#79651): "Unexecuted instantiation" errors appear in coverage results | coverage/auxiliary/used_crate | Closed |
FIXME(#79651): Consider trying to filter out dummy instantiations of | rustc_codegen_llvm/src/coverageinfo/mapgen | Closed |
FIXME(#80564): Same for fields, arms, and macro defs | rustc_passes/src/check_attr | Closed |
FIXME(#80564): We permit struct fields and match arms to have an | rustc_passes/src/check_attr rustc_passes/src/check_attr | Closed |
FIXME(#80564): We permit struct fields, match arms and macro defs to have an | rustc_passes/src/check_attr rustc_passes/src/check_attr rustc_passes/src/check_attr rustc_passes/src/check_attr rustc_passes/src/check_attr rustc_passes/src/check_attr rustc_passes/src/check_attr rustc_passes/src/check_attr rustc_passes/src/check_attr rustc_passes/src/check_attr rustc_passes/src/check_attr | Closed |
FIXME(#80931) | ui/parser/block-no-opening-brace | Open |
FIXME(#82080) The deprecation here is only theoretical, and does not actually produce a warning | std/src/collections/mod | Open |
FIXME(#82852): Instantiate const parameters | rustdoc/clean/mod | Open |
FIXME(#82852): We don't record const params since we don't visit const exprs at all and | rustdoc/core | Open |
FIXME(#83706): this test triggers errors on aarch64-gnu | ui/sanitizer/hwaddress | Closed |
FIXME(#83838) codegen-units=1 triggers llvm asserts | ui/linkage-attr/linkage-detect-extern-generated-name-collision ui/linkage-attr/linkage-detect-local-generated-name-collision | Open |
FIXME(#83862): this arbitrarily gives precedence to primitives over modules to support | rustdoc/passes/collect_intra_doc_links | Closed |
FIXME(#83989): codegen-units=1 triggers linker errors on aarch64-gnu | ui/sanitizer/hwaddress | Open |
FIXME(#85497): make this a deny instead so it's more clear what's happening | rustdoc-ui/doc-include-suggestion | Closed |
FIXME(#85708) - once we properly decode a foreign | rustc_expand/src/mbe/quoted | Open |
FIXME(#86868): We should be canonicalizing, or else moving this to a method of inference | rustc_middle/src/ty/util | Open |
FIXME(#88840): The latest version of the Windows SDK broke the visualizer for str | debuginfo/basic-types | Open |
FIXME(#91576): Drop shims for coroutines aren't subject to the MIR passes at the end | rustc_mir_transform/src/shim | Open |
FIXME(#92165): In order to truly resolve this, we need to make sure | rustc_monomorphize/src/partitioning | Open |
FIXME(#93176): this field is made `#[unstable] #[doc(hidden)] pub` to | core/src/pin | Closed |
FIXME(#93754): increase the test coverage of this test | run-make/branch-protection-check-IBT/rmake | Open |
FIXME(#95162) For the moment, we adopt a conservative approach and | rustc_mir_transform/src/early_otherwise_branch | Closed |
FIXME(#95489): there should eventually be a lint for these casts | rustc_hir_typeck/src/cast | Open |
FIXME(#96332): We should be able to suggest a fix and automatically fix | ui/suggestions/impl-on-dyn-trait-with-implicit-static-bound | Open |
FIXME(#97583): Print associated item bindings properly (i.e., not as equality predicates!) | rustc_hir_analysis/src/hir_ty_lowering/mod | Open |
FIXME(#97583): This isn't syntactically well-formed! | rustc_hir_analysis/src/hir_ty_lowering/mod | Open |
FIXME(#98437). This regressed at some point and | ui/generic-associated-types/collectivity-regression ui/nll/snocat-regression | Open |
FIXME(#98711): Ideally we would also deal with type relative | rustc_trait_selection/src/error_reporting/infer/need_type_info | Open |
FIXME(-Zlower-impl-trait-in-trait-to-assoc-ty): HIR is not present for RPITITs | rustc_trait_selection/src/error_reporting/traits/on_unimplemented | |
FIXME(-Znext-solver): A bit dubious that we're only registering | rustc_borrowck/src/lib | |
FIXME(-Znext-solver): A lot of the calls to this method should | rustc_hir_typeck/src/fn_ctxt/_impl | |
FIXME(-Znext-solver): Can remove this `if` and always simplify to `Placeholder` | rustc_type_ir/src/fast_reject | |
FIXME(-Znext-solver): Doesn't need diagnostics if new solver | rustc_traits/src/codegen | |
FIXME(-Znext-solver): Due to the recursive nature of the new solver | rustc_trait_selection/src/infer | |
FIXME(-Znext-solver): For diagnostic purposes, it would be nice | rustc_trait_selection/src/error_reporting/traits/fulfillment_errors | |
FIXME(-Znext-solver): For performance reasons, we currently reuse an existing | rustc_trait_selection/src/traits/normalize | |
FIXME(-Znext-solver): How do we accurately report an error span here :( | rustc_infer/src/infer/outlives/obligations | |
FIXME(-Znext-solver): Not needed when the hack below is removed | rustc_hir_analysis/src/check/compare_impl_item | |
FIXME(-Znext-solver): Opaque types defined after this would simply get dropped | rustc_hir_typeck/src/writeback | |
FIXME(-Znext-solver): Remove this branch once `replace_opaque_types_with_infer` is gone | rustc_hir_typeck/src/_match | |
FIXME(-Znext-solver): Remove this hack when trait solver overflow can return an error | rustc_mir_transform/src/inline/cycle | |
FIXME(-Znext-solver): See the linked issue below | rustc_hir_typeck/src/method/probe | |
FIXME(-Znext-solver): These error messages are horrible and some of them | ui/traits/next-solver/dyn-incompatibility | |
FIXME(-Znext-solver): This *actually* shouldn't happen then | rustc_hir_analysis/src/autoderef | |
FIXME(-Znext-solver): This currently results in unstable query results | ui/dyn-star/param-env-region-infer | |
FIXME(-Znext-solver): This does not handle impl candidates | rustc_trait_selection/src/solve/inspect/analyse | |
FIXME(-Znext-solver): This is public because it's used by the | rustc_infer/src/infer/canonical/mod | |
FIXME(-Znext-solver): This or public because it is shared with the | rustc_infer/src/infer/canonical/instantiate | |
FIXME(-Znext-solver): Try removing this hack again once the new | rustc_hir_analysis/src/check/compare_impl_item | |
FIXME(-Znext-solver): We can likely remove this hack once the new trait solver lands | rustc_hir_analysis/src/bounds | |
FIXME(-Znext-solver): We only need this hack to deal with fatal | rustc_hir_typeck/src/method/probe | |
FIXME(-Znext-solver): We should instead try to find a `Certainty::Yes` response with | rustc_next_trait_solver/src/solve/mod | |
FIXME(-Znext-solver): We're still figuring out how to best handle | rustc_hir_typeck/src/fn_ctxt/mod | |
FIXME(-Znext-solver): remove this hack since we have deferred projection equality | rustc_trait_selection/src/traits/mod | |
FIXME(-Znext-solver): shouldn't be using old normalizer | rustc_trait_selection/src/traits/query/type_op/normalize | |
FIXME(-Znext-solver): this fails with a mismatched types as the | ui/impl-trait/recursive-coroutine-boxed | |
FIXME(-Znext-solver=coinduction): `_source` is currently unused but will | rustc_next_trait_solver/src/solve/eval_ctxt/mod | |
FIXME(-Znext-solver=coinductive): Adding supertraits here can be removed once we | rustc_next_trait_solver/src/solve/assembly/structural_traits | |
FIXME(-Znext-solver=coinductive): Are these even coinductive? | rustc_type_ir/src/solve/mod | |
FIXME(-Znext-solver=coinductive): Explain how and why this | rustc_type_ir/src/solve/mod | |
FIXME(-Znext-solver=coinductive): I think this should be split | rustc_next_trait_solver/src/solve/normalizes_to/inherent | |
FIXME(-Znext-solver=coinductive): Should this be `GoalSource::ImplWhereBound`? | rustc_next_trait_solver/src/solve/normalizes_to/mod rustc_next_trait_solver/src/solve/trait_goals | |
FIXME(-Znext-solver=coinductive): With the new coinduction approach | ui/traits/next-solver/cycles/mixed-cycles-1 ui/traits/next-solver/cycles/mixed-cycles-2 | |
FIXME(117276): remove this, move feature implementations into individual | std/src/sys/mod | Open |
FIXME(30524): impl Op<T> for Saturating<T>, impl OpAssign<T> for Saturating<T> | core/src/num/saturating | Closed |
FIXME(30524): impl Op<T> for Wrapping<T>, impl OpAssign<T> for Wrapping<T> | core/src/num/wrapping | Closed |
FIXME(30524): uncomment this test | ui/numbers-arithmetic/num-wrapping | Closed |
FIXME(30524): uncomment this test when it's implemented | ui/numbers-arithmetic/num-wrapping | Closed |
FIXME(31528) we emit a bunch of silly errors here due to continuing past the | ui/parser/issues/issue-10636-2 | Closed |
FIXME(60254): deduplicate first error in favor of second | ui/expr/if/if-without-else-as-fn-expr | Closed |
FIXME(69775): Investigate `assert_fake_source_file` | ui/proc-macro/span-api-tests | Closed |
FIXME(81490): ld64 as of macOS 11 supports the -needed_framework | rustc_codegen_ssa/src/back/linker | Closed |
FIXME(81490): ld64 doesn't support these flags but macOS 11 | rustc_codegen_ssa/src/back/linker | Closed |
FIXME(@ChrisDenton): this doesn't currently work with llvm's lld-link for other reasons | run-make/msvc-wholearchive/rmake | |
FIXME(@compiler-errors): This error message is less than helpful | ui/nll/issue-57362-2 | |
FIXME(@dingxiangfei2009): choose call arguments here | rustc_hir_analysis/src/check/region | |
FIXME(@dingxiangfei2009): it turns out that `self.body.source_scopes` are | rustc_mir_transform/src/lint_tail_expr_drop_order | |
FIXME(@dingxiangfei2009): select the indices | rustc_hir_analysis/src/check/region | |
FIXME(@gereeter) consider adding yet another type parameter to `NodeRef` | alloc/src/collections/btree/node | |
FIXME(@kjetilkjeka) Debug symbol generation is broken for nvptx64 so we must remove them even in debug mode | tools/llvm-bitcode-linker/src/linker | |
FIXME(@lcnr): It's not really "always fine", having fewer implied | rustc_trait_selection/src/traits/query/type_op/implied_outlives_bounds | |
FIXME(@lcnr): Move this module out of `rustc_hir_analysis` | rustc_hir_analysis/src/check/dropck | |
FIXME(@lcnr): Remove this function | rustc_middle/src/ty/mod | |
FIXME(@lcnr): This method should not be necessary, we now normalize | rustc_middle/src/ty/normalize_erasing_regions | |
FIXME(@lcnr): This should also store a `DefId`, similar to | rustc_infer/src/infer/mod | |
FIXME(@lcnr): This should probably only trigger during analysis | rustc_trait_selection/src/traits/select/candidate_assembly | |
FIXME(@lcnr): We may even consider experimenting with eagerly replacing bound vars during | rustc_trait_selection/src/traits/util | |
FIXME(@lcnr): Why does this use an `infcx`, there should be | rustc_mir_build/src/builder/mod | |
FIXME(@lcnr): remove that after removing `cause.body_id` from | rustc_hir_analysis/src/check/compare_impl_item | |
FIXME(@lcnr): remove this module and move this function somewhere else | rustc_trait_selection/src/traits/query/dropck_outlives | |
FIXME(@lcnr): rustc currently does not check wf for types | rustc_trait_selection/src/traits/engine | |
FIXME(@lcnr): this function doesn't seem right and shouldn't exist? | rustc_trait_selection/src/traits/mod | |
FIXME(@mirkootter): For wasm, we currently do not support terminate during | rustc_codegen_ssa/src/mir/block | |
FIXME(@poliorcetics): move to multiple targets here too, but this will need more work | tools/rust-analyzer/crates/rust-analyzer/src/config | |
FIXME(@rust-lang/lang-team): consider relaxing this? | ui/expr/if/if-no-match-bindings | |
FIXME(BoxyUwU): Private this once we `generic_const_exprs` isn't doing its own normalization routine | rustc_trait_selection/src/traits/mod rustc_trait_selection/src/traits/mod | |
FIXME(BoxyUwU): We should remove this `Ty` and look up the type for params via `ParamEnv` | rustc_middle/src/mir/consts | |
FIXME(Centril): Can we unconditionally `allow_plus`? | rustc_parse/src/parser/ty | |
FIXME(Centril): Consider not erroring here and accepting `('lt)` instead | rustc_parse/src/parser/ty | |
FIXME(Centril): Consider semantic errors instead in `ast_validation` | rustc_parse/src/parser/pat | |
FIXME(Centril): For now closures are an exception | ui/parser/self-param-semantic-fail ui/parser/self-param-syntactic-pass | |
FIXME(Centril): Reconsider this? | alloc/src/vec/partial_eq | |
FIXME(Centril): This can be used on stable but shouldn't | rustc_feature/src/builtin_attrs tools/rust-analyzer/crates/hir-expand/src/inert_attr_macro | |
FIXME(Centril): extend with the rest of the non-`async fn` test | ui/self/arbitrary_self_types_pin_lifetime-async | |
FIXME(Centril): perhaps these should be semantic restrictions | ui/half-open-range-patterns/half-open-range-pats-inclusive-no-end | |
FIXME(Centril, #69537): Consider reintroducing panic on overwriting a stashed diagnostic | rustc_errors/src/lib | Closed |
FIXME(ChAoSUnItY): Too many arguments | rustdoc/passes/lint/redundant_explicit_links rustdoc/passes/lint/redundant_explicit_links | |
FIXME(CraneStation/cranelift#849) legalize iadd_cout for i8 and i16 | rustc_codegen_cranelift/src/num | Closed |
FIXME(CraneStation/cranelift#849) legalize isub_bout for i8 and i16 | rustc_codegen_cranelift/src/num | Closed |
FIXME(DIAGNOSE): private tuple field | tools/rust-analyzer/crates/hir-ty/src/infer/pat | |
FIXME(Ezrashaw): returning is bad because we still might want to | rustc_borrowck/src/diagnostics/mutability_errors | |
FIXME(GATs): these are args for the trait ref, args for assoc type itself should be | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME(GrigorenkoPV): this `if` and `return` should be removed | rustc_lint/src/lints | |
FIXME(JakobDegen) The validator should check that `self.body.phase < | rustc_mir_transform/src/validate rustc_mir_transform/src/validate | |
FIXME(JakobDegen): Can we make these lists of passes consts? | rustc_mir_transform/src/lib | |
FIXME(JakobDegen): In a previous version, the `Move` case was incorrectly treated as | rustc_mir_transform/src/dest_prop | |
FIXME(JakobDegen): Return a `(usize, usize)` instead | rustc_middle/src/mir/mod | |
FIXME(JakobDegen): These bodies never instantiated in codegend anyway, so it's not | rustc_mir_transform/src/validate | |
FIXME(JohnTitor): Centril pointed out this looks suspicions, we should revisit here | ui/specialization/issue-39618 | |
FIXME(Kixiron): We can always shuffle fields within a given alignment class | rustc_abi/src/layout | |
FIXME(Manishearth) ideally the emitting code | rustc_lint/src/early/diagnostics | |
FIXME(Manishearth) these tests focus on single-character searching (CharSearcher) | core/tests/pattern | |
FIXME(Nadrieril): A `Box` can in theory be matched either with `Box(_ | rustc_pattern_analysis/src/rustc tools/rust-analyzer/crates/hir-ty/src/diagnostics/match_check/pat_analysis | |
FIXME(Nadrieril): use the same order of patterns for both | rustc_pattern_analysis/src/usefulness | |
FIXME(Nadrieril): which of these are actually allowed? | rustc_pattern_analysis/src/rustc | |
FIXME(Nilstrieb) Make this function setup translatable | rustc_builtin_macros/src/util | |
FIXME(Nilstrieb) Translate macro_rules diagnostics | rustc_expand/src/lib | |
FIXME(Nilstrieb) Translate proc_macro diagnostics | rustc_expand/src/lib | |
FIXME(Nilstrieb): Remove this again after a few months | rustc_parse/src/parser/stmt | |
FIXME(Oneirical): Bin builds are not reproducible on non-Linux targets | run-make/reproducible-build/rmake run-make/reproducible-build/rmake | |
FIXME(Oneirical): Building with crate type set to `bin` AND having -Cdebuginfo=2 | run-make/reproducible-build/rmake run-make/reproducible-build/rmake | |
FIXME(Oneirical): Except that due to the reliance on llvm-profdata, this test | run-make/cross-lang-lto-pgo-smoketest-clang/rmake | |
FIXME(Oneirical): Getting this to work on MSVC requires passing libcmt.lib to CC | run-make/no-alloc-shim/rmake | |
FIXME(Oneirical): There was a strange workaround for MSVC on this test | run-make/cross-lang-lto-pgo-smoketest-clang/rmake | |
FIXME(Oneirical): These could be generalized into run_make_support | run-make/remap-path-prefix/rmake | |
FIXME(Oneirical): These native build functions should take a Path-based generic | tools/run-make-support/src/external_deps/c_build | |
FIXME(Oneirical): This could be adapted to work on Windows by checking how | run-make/lto-avoid-object-duplication/rmake | |
FIXME(Oneirical): This specific case would fail on Linux, should -Cdebuginfo=2 | run-make/reproducible-build/rmake | |
FIXME(Oneirical): This will no longer be required after compiletest receives the ability to | tools/run-make-support/src/scoped_run | |
FIXME(Oneirical): the DW_CFA symbol appears on Windows-gnu, because uwtable | run-make/panic-abort-eh_frame/rmake | |
FIXME(RPITIT): Deny nested RPITIT in args too | rustc_hir_analysis/src/check/compare_impl_item | |
FIXME(RPITIT): Don't replace RPITITs with inference vars | rustc_infer/src/infer/opaque_types/mod | |
FIXME(RPITIT): if we ever synthesize new lifetimes for RPITITs and not just | rustc_middle/src/ty/context | |
FIXME(RalfJung) it makes little sense to not promote this in `fn`/`const fn` | rustc_mir_transform/src/promote_consts | |
FIXME(RalfJung): I don't think it would be correct to do any checks for | rustc_ty_utils/src/layout/invariant | |
FIXME(RalfJung): Should we have a cache here? | rustc_const_eval/src/interpret/memory | |
FIXME(RalfJung): could we allow them? Should we? No point in it until we have a | rustc_mir_transform/src/promote_consts | |
FIXME(SarthakSingh31): This points to the start of the declaration block and | rustc_expand/src/build | |
FIXME(SergioBenitez): check that the byte range starts and ends at a | proc_macro/src/lib | |
FIXME(SergioBenitez): there is no way for the user to know what | proc_macro/src/lib | |
FIXME(Swatinem): Fix known issue that coverage code region columns need to be offset by the | coverage-run-rustdoc/doctest | |
FIXME(TaKO8Ki): Ideally we should support other kinds | rustc_trait_selection/src/error_reporting/infer/need_type_info | |
FIXME(Urgau): Figure out how to handle modules nested in bodies | rustc_lint/src/non_local_def | |
FIXME(Zalathar): Currently this treats an unused counter as "used" | rustc_middle/src/mir/coverage | |
FIXME(Zalathar): Find a better solution for mixed-coverage builds | rustc_codegen_llvm/src/coverageinfo/mod | |
FIXME(Zalathar): If we were to forcibly _set_ all excess bits before | rustc_index/src/bit_set | |
FIXME(Zalathar): Integrate name/value splitting into `DirectiveLine` | tools/compiletest/src/header | |
FIXME(Zalathar): Integrate this into central skip handling somehow? | bootstrap/src/core/build_steps/test | |
FIXME(Zalathar): Make these commands skip all coverage tests, as expected | bootstrap/src/core/build_steps/test | |
FIXME(Zalathar): Make this the responsibility of the code that determines | rustc_codegen_llvm/src/coverageinfo/mapgen/covfun | |
FIXME(Zalathar): Perform all `auxiliary` path resolution in one place | tools/compiletest/src/lib | |
FIXME(Zalathar): These `DW_TAG_*` constants are fake values that were | rustc_codegen_llvm/src/debuginfo/mod | |
FIXME(Zalathar): This should probably be `output_base_dir` to avoid | tools/compiletest/src/runtest/run_make | |
FIXME(Zalathar): Try to split this into two separate steps: a user-visible | bootstrap/src/core/build_steps/test | |
FIXME(ZuseZ4) We should make this more robust to also | rustc_ast/src/expand/autodiff_attrs | |
FIXME(ZuseZ4): Do we need that for Enzyme too? | bootstrap/src/core/build_steps/llvm | |
FIXME(ZuseZ4): Find a nicer way to use Enzyme Debug builds | bootstrap/src/core/build_steps/llvm | |
FIXME(ZuseZ4): In a future update we could figure out how to only optimize individual functions getting | rustc_codegen_llvm/src/back/write | |
FIXME(ZuseZ4): LLVM intends to drop the offload dependency on openmp | bootstrap/src/core/build_steps/llvm | |
FIXME(ZuseZ4): Once autodiff is enabled by default, make this a doc comment which is checked | rustc_builtin_macros/src/autodiff | |
FIXME(ZuseZ4): The new pass based approach should not need the {Forward/Reverse}First method anymore, since | rustc_codegen_llvm/src/builder/autodiff | |
FIXME(ZuseZ4): This logic is a bit more complicated than it should be, can we simplify it | rustc_codegen_llvm/src/builder/autodiff | |
FIXME(ZuseZ4): We should add support for Vec here too, but it's less urgent since | rustc_codegen_llvm/src/builder/autodiff | |
FIXME(ZuseZ4): We still have cases of incorrect inlining across modules, see | rustc_builtin_macros/src/autodiff | |
FIXME(ZuseZ4): We will upstream a safety check later which asserts that | rustc_codegen_llvm/src/builder/autodiff | |
FIXME(ZuseZ4): Work with Enzyme core devs to clarify what debug metadata issues we have | rustc_codegen_llvm/src/builder/autodiff | |
FIXME(ZuseZ4): `outer_fn` should include upstream safety checks to | rustc_codegen_llvm/src/builder/autodiff | |
FIXME(ZuseZ4): support SanitizeHWAddress and prevent illegal/unsupported opts | rustc_codegen_llvm/src/back/write rustc_codegen_llvm/src/builder/autodiff | |
FIXME(ZuseZ4): the CC/Addr/Vis values are best effort guesses, we should look at tests and | rustc_codegen_llvm/src/builder/autodiff | |
FIXME(aDotInTheVoid): Consider making this non-public in rustdoc-types | rustdoc-json-types/lib | |
FIXME(aburka): these structs are used solely by #[derive] to | core/src/clone | |
FIXME(adotinthevoid): Currently, the index is duplicated. This is a sanity check | rustdoc/json/mod | |
FIXME(adotinthevoid): I'm not sure if these are correct | tools/jsondoclint/src/item_kind | |
FIXME(adotinthevoid): Show line number | tools/jsondocck/src/main | |
FIXME(adt_const_params): We should check there's not already an | rustc_trait_selection/src/error_reporting/traits/fulfillment_errors | |
FIXME(adt_const_params): handle `ty::FnDef`/`ty::Closure` | core/src/marker | |
FIXME(antoyo): As a temporary workaround for unsupported LLVM intrinsics | rustc_codegen_gcc/src/builder | |
FIXME(antoyo): I don't think that's true for libgccjit | rustc_codegen_gcc/src/type_of | |
FIXME(antoyo): Re-add -Zmir-opt-level=2 once rust-lang/rust#67529 is fixed | rustc_codegen_gcc/build_system/src/test | Closed |
FIXME(antoyo): Should we do something with `FnAbiGcc::fn_attributes`? | rustc_codegen_gcc/src/abi rustc_codegen_gcc/src/type_of | |
FIXME(antoyo): The LTO frontend generates the following warning | rustc_codegen_gcc/src/back/write | |
FIXME(antoyo): `*` might not be expected: rust-lang/rust/issues/116979#issuecomment-1840926865 | rustc_codegen_gcc/src/declare | |
FIXME(antoyo): add a check in the libgccjit API to prevent this | rustc_codegen_gcc/src/intrinsic/mod | |
FIXME(antoyo): allow comparing vector types as equal in libgccjit | rustc_codegen_gcc/src/intrinsic/simd | |
FIXME(antoyo): clippy bug: remove the #[allow] when it's fixed | rustc_codegen_gcc/src/lib | |
FIXME(antoyo): find a way to refactor in order to avoid this hack | rustc_codegen_gcc/src/intrinsic/llvm | |
FIXME(antoyo): fix bitcast to work in constant contexts | rustc_codegen_gcc/src/common | |
FIXME(antoyo): fix libgccjit to allow comparing an integer type with an aligned integer type because | rustc_codegen_gcc/src/builder | |
FIXME(antoyo): fix the rustc API to avoid having this hack | rustc_codegen_gcc/src/context | |
FIXME(antoyo): for some reasons, disabling SSE results in the following error when | rustc_codegen_gcc/src/attributes | |
FIXME(antoyo): if there were more than 1 index, this code is probably wrong and would | rustc_codegen_gcc/src/builder | |
FIXME(antoyo): invalid cast | rustc_codegen_gcc/src/declare | |
FIXME(antoyo): it would be better if the API only called this on struct, not on arrays | rustc_codegen_gcc/src/builder rustc_codegen_gcc/src/builder | |
FIXME(antoyo): libgccjit cannot create 128-bit values yet | rustc_codegen_gcc/src/int rustc_codegen_gcc/src/int | Closed |
FIXME(antoyo): linker gives multiple definitions error on Linux | rustc_codegen_gcc/build_system/src/test | |
FIXME(antoyo): not sure why, but we have the wrong type here | rustc_codegen_gcc/src/builder | |
FIXME(antoyo): panicking here makes the test pass | rustc_codegen_gcc/tests/lang_tests_common | |
FIXME(antoyo): remove once the atomic shim is gone | rustc_codegen_gcc/build_system/src/config | |
FIXME(antoyo): remove the casts when libgccjit can shift an unsigned number by a signed number | rustc_codegen_gcc/src/int | |
FIXME(antoyo): remove the casts when libgccjit can shift an unsigned number by an unsigned number | rustc_codegen_gcc/src/int | |
FIXME(antoyo): remove when having a proper API | rustc_codegen_gcc/src/builder | |
FIXME(antoyo): rustc_codegen_ssa::mir::intrinsic uses different types for a and b but they | rustc_codegen_gcc/src/builder | |
FIXME(antoyo): segfault in dump_reproducer_to_file() might be caused by | rustc_codegen_gcc/src/back/write | |
FIXME(antoyo): that shouldn't be Sync. Parallel compilation is currently disabled with "-Zno-parallel-llvm" | rustc_codegen_gcc/src/lib | |
FIXME(antoyo): that's not going to work for masks bigger than 128 bits | rustc_codegen_gcc/src/intrinsic/simd | Closed |
FIXME(antoyo): the executables compiled with LTO are bigger than those compiled without LTO | rustc_codegen_gcc/src/back/lto | |
FIXME(antoyo): the rustc API seems to call get_fn_addr() when not needed (e.g. for FFI) | rustc_codegen_gcc/src/context | |
FIXME(antoyo): there's some issues with using the u128 code that follows, so hard-code | rustc_codegen_gcc/src/common | |
FIXME(antoyo): this cast should not be necessary. Remove | rustc_codegen_gcc/src/int | |
FIXME(antoyo): this check that we don't call get_aligned() a second time on a type | rustc_codegen_gcc/src/builder | |
FIXME(antoyo): this does not zero-extend | rustc_codegen_gcc/src/builder | |
FIXME(antoyo): this is a hack because libgccjit currently only supports alpha, num and _ | rustc_codegen_gcc/src/declare | |
FIXME(antoyo): this is a wrong cast. That requires changing the compiler API | rustc_codegen_gcc/src/context rustc_codegen_gcc/src/declare | |
FIXME(antoyo): this is misleading to use the next power of two as rustc_codegen_ssa | rustc_codegen_gcc/src/type_ | |
FIXME(antoyo): this seems to produce the wrong result | rustc_codegen_gcc/src/builder | |
FIXME(antoyo): use a new function new_rvalue_from_unsigned_long()? | rustc_codegen_gcc/src/int | |
FIXME(antoyo): use the proper builtins for llvm.x86.sse2.cmp.pd and similar | rustc_codegen_gcc/src/base | |
FIXME(antoyo): we never reach this because get_declared_value only returns global variables | rustc_codegen_gcc/src/callee | |
FIXME(arielb1): use this instead of field.ty everywhere | rustc_hir_typeck/src/fn_ctxt/_impl | |
FIXME(arora-aman): Change `_x` to `_` | ui/closures/2229_closure_analysis/wild_patterns ui/closures/2229_closure_analysis/wild_patterns ui/closures/2229_closure_analysis/wild_patterns | |
FIXME(associated_const_equality): All users of normalize_canonicalized_projection_ty | rustc_traits/src/normalize_projection_ty | |
FIXME(associated_const_equality): Also add associated consts to | rustc_next_trait_solver/src/solve/assembly/structural_traits | |
FIXME(associated_const_equality): Handle consts here as well? Maybe this progress type should just take | rustc_trait_selection/src/traits/project | |
FIXME(associated_const_equality): This has quite a few false positives and negatives | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME(associated_const_equality): We should walk the const instead of not doing anything | rustc_hir_analysis/src/hir_ty_lowering/dyn_compatibility | |
FIXME(associated_const_equality): allow for consts here | rustc_codegen_ssa/src/debuginfo/type_names | |
FIXME(async_closures): Get rid of this in favor of `BoundVarReplacerDelegate` | rustc_type_ir/src/ty_kind/closure | |
FIXME(async_closures): Implement this | rustc_hir_typeck/src/fn_ctxt/_impl | |
FIXME(async_closures): It may be useful to add a debug assert here | rustc_borrowck/src/type_check/mod | |
FIXME(async_closures): It's kind of wacky that we must apply this | rustc_borrowck/src/type_check/input_output | |
FIXME(async_closures): This could be cleaned up. It's a bit janky that we're just | rustc_hir_typeck/src/upvar | |
FIXME(async_closures): This is probably not going to be correct w.r.t | rustc_codegen_ssa/src/debuginfo/type_names | |
FIXME(async_closures): This is somewhat ugly | rustc_middle/src/ty/print/mod | |
FIXME(async_closures): This needs a better error message! | ui/async-await/async-closures/not-fn | |
FIXME(async_closures): This shouldn't be needed when we fix | rustc_symbol_mangling/src/legacy rustc_symbol_mangling/src/v0 | |
FIXME(async_closures): This shouldn't be needed, and we should be populating | rustc_ty_utils/src/abi | |
FIXME(async_closures): Validity constraints here could be cleaned up | rustc_trait_selection/src/traits/project | |
FIXME(async_fn_in_dyn_trait): Think of a better way to unify these code paths | rustc_trait_selection/src/traits/dyn_compatibility | |
FIXME(async_fn_in_dyn_trait): We should check that this bound is legal too | rustc_trait_selection/src/traits/dyn_compatibility | |
FIXME(async_fn_track_caller): Can this be moved above? | rustc_ast_lowering/src/item | |
FIXME(bjorn3): Add noreturn attribute | rustc_codegen_gcc/src/allocator | |
FIXME(bjorn3): implement | rustc_codegen_gcc/src/builder | |
FIXME(blyxyas): In a future revision, we should also graph #![allow]s | rustc_lint/src/levels | |
FIXME(bob_twinkles) is this actually the right thing to do? | rustc_borrowck/src/polonius/legacy/loan_invalidations | |
FIXME(bootstrap): This isn't a known bug, we just don't want to write any error annotations | ui/const-generics/early/const_arg_trivial_macro_expansion-1 | |
FIXME(bryangarza): Add separate `IfAny` case, instead of treating as `IfAll` | rustc_trait_selection/src/traits/select/confirmation | |
FIXME(bytecodealliance/wasmtime#6104) do something more efficient for transmutes between vectors and integers | rustc_codegen_cranelift/src/value_and_place | Closed |
FIXME(bytecodealliance/wasmtime#6104) use bitcast instead of store to get from i64x2 to i128 | rustc_codegen_cranelift/src/cast rustc_codegen_cranelift/src/codegen_i128 | Closed |
FIXME(bytecodealliance/wasmtime#8901) set S_CSTRING_LITERALS section type when | rustc_codegen_cranelift/src/constant | Closed |
FIXME(c410-f3r) Nested repetitions are unimplemented | rustc_expand/src/mbe/transcribe | |
FIXME(c410-f3r) See rust-lang/rust/issues/96949 | rustc_builtin_macros/src/assert | |
FIXME(c_variadic): Should we just allow `...` syntactically | rustc_parse/src/parser/ty | |
FIXME(calebcartwright 2021-01-03) - This exists strictly to maintain legacy | tools/rustfmt/src/visitor tools/rustfmt/src/visitor | Closed |
FIXME(calebcartwright) - Hopefully one day we can | tools/rustfmt/tests/source/statements tools/rustfmt/tests/target/statements | |
FIXME(calebcartwright) - This is a hack around a bug in the handling of TyKind::ImplTrait | tools/rustfmt/src/items | |
FIXME(calebcartwright) - remove 'version' at some point | tools/rustfmt/src/config/mod | |
FIXME(calebcartwright) - we need to determine how we'll handle the | tools/rustfmt/src/formatting | |
FIXME(camelid): This may not work correctly if `item_did` is a module | rustdoc/html/format | |
FIXME(camlorn) also consider small vector optimization here | rustc_abi/src/lib | |
FIXME(chenyukang), remove this after type ascription is removed from AST | tools/clippy/clippy_utils/src/sugg tools/clippy/clippy_utils/src/sugg | |
FIXME(chrisvittal) Clean up this function, list of FIXME items | rustc_hir_analysis/src/check/compare_impl_item | |
FIXME(cjgillot) Stop hashing HIR manually here | rustc_mir_transform/src/coverage/mod | |
FIXME(clause): This is wonky | rustc_middle/src/ty/structural_impls | |
FIXME(compiler-errors): Does this ever actually show up | rustc_borrowck/src/diagnostics/region_name | |
FIXME(compiler-errors): Don't like that this needs `Ty`s, but | rustc_trait_selection/src/error_reporting/infer/nice_region_error/trait_impl_difference | |
FIXME(compiler-errors): I don't think this is needed | rustc_trait_selection/src/traits/select/confirmation | |
FIXME(compiler-errors): I'm not exactly sure if this is expected to pass or not | ui/impl-trait/in-trait/specialization-broken | |
FIXME(compiler-errors): It would be nice to do the same | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME(compiler-errors): Perhaps there is a case where we need to normalize this | rustc_hir_analysis/src/check/wfcheck | |
FIXME(compiler-errors): Right now this is only being used for region | rustc_trait_selection/src/error_reporting/infer/note rustc_trait_selection/src/error_reporting/infer/region | |
FIXME(compiler-errors): Support suggestions for other matching enum variants | rustc_hir_typeck/src/method/suggest | |
FIXME(compiler-errors): Think about removing this | rustc_middle/src/ty/consts rustc_middle/src/ty/consts rustc_middle/src/ty/predicate rustc_middle/src/ty/predicate rustc_middle/src/ty/sty rustc_middle/src/ty/util | |
FIXME(compiler-errors): This check is *so* rudimentary | rustc_hir_typeck/src/fn_ctxt/suggestions | |
FIXME(compiler-errors): This could at least do some first-order | rustc_trait_selection/src/error_reporting/infer/mod | |
FIXME(compiler-errors): This could be generalized, both to | rustc_trait_selection/src/error_reporting/traits/fulfillment_errors | |
FIXME(compiler-errors): This could be problematic if something has two | rustc_hir_typeck/src/fn_ctxt/checks | |
FIXME(compiler-errors): This could use `<$ty as Pointee>::Metadata == ()` | rustc_hir_analysis/src/check/intrinsicck | |
FIXME(compiler-errors): This currently suggests the wrong thing | ui/suggestions/dont-suggest-doc-hidden-variant-for-enum/hidden-child | |
FIXME(compiler-errors): This fixup should suggest the full box path, not just `Box` | ui/type/type-recursive-box-shadowed | |
FIXME(compiler-errors): This gives us better spans for bad | rustc_trait_selection/src/traits/misc | |
FIXME(compiler-errors): This is kind of a mess, but required for obligations | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME(compiler-errors): This should and could be deduplicated into a query | rustc_hir_analysis/src/coherence/builtin | |
FIXME(compiler-errors): This suggestion might be erroneous if Box is shadowed | rustc_middle/src/values | |
FIXME(compiler-errors): We can actually do this if the checked_ty is | rustc_hir_typeck/src/fn_ctxt/suggestions | |
FIXME(compiler-errors): We could also recover `; PAT =>` here | rustc_parse/src/parser/expr | |
FIXME(compiler-errors): We could probably point to something | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME(compiler-errors): We may benefit from resolving regions here | rustc_hir_analysis/src/collect | |
FIXME(compiler-errors): We should remove this when the old solver goes away; | rustc_middle/src/ty/util | |
FIXME(compiler-errors): are Bound and Placeholder types ever known sized? | rustc_trait_selection/src/traits/project | |
FIXME(compiler-errors): is this correct? | rustc_mir_transform/src/shim | |
FIXME(compiler-errors): this could be improved by suggesting lifting | rustc_parse/src/parser/path | |
FIXME(compiler-errors): this should probably parse an arbitrary expr and not | rustc_parse/src/parser/stmt | |
FIXME(compiler-team#422): musl targets should be dynamically linked by default | rustc_target/src/spec/targets/aarch64_unknown_linux_musl rustc_target/src/spec/targets/arm_unknown_linux_musleabi rustc_target/src/spec/targets/arm_unknown_linux_musleabihf rustc_target/src/spec/targets/armv5te_unknown_linux_musleabi rustc_target/src/spec/targets/armv7_unknown_linux_musleabi rustc_target/src/spec/targets/armv7_unknown_linux_musleabihf rustc_target/src/spec/targets/i586_unknown_linux_musl rustc_target/src/spec/targets/i686_unknown_linux_musl rustc_target/src/spec/targets/mips64_unknown_linux_muslabi64 rustc_target/src/spec/targets/mips64el_unknown_linux_muslabi64 rustc_target/src/spec/targets/powerpc64_unknown_linux_musl rustc_target/src/spec/targets/powerpc64le_unknown_linux_musl rustc_target/src/spec/targets/powerpc_unknown_linux_musl rustc_target/src/spec/targets/powerpc_unknown_linux_muslspe rustc_target/src/spec/targets/riscv32gc_unknown_linux_musl rustc_target/src/spec/targets/s390x_unknown_linux_musl rustc_target/src/spec/targets/thumbv7neon_unknown_linux_musleabihf rustc_target/src/spec/targets/x86_64_unknown_linux_musl | Closed |
FIXME(const-generic-body): The expected type should not be | tools/rust-analyzer/crates/hir-def/src/lib | |
FIXME(const-generic-body): Use an stable id for in type consts | tools/rust-analyzer/crates/hir-def/src/lib | |
FIXME(const-generic-body): We should not get the return type in this way | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME(const-hack) | core/tests/option | |
FIXME(const-hack) Remove me once `Ord::max` is usable in const | core/src/ptr/alignment | |
FIXME(const-hack) Simplify the implementation once more `str` methods get const-stable | rustc_mir_transform/src/pass_manager rustc_mir_transform/src/pass_manager rustc_mir_transform/src/pass_manager | |
FIXME(const-hack) make this const again | rustc_ast/src/ptr | |
FIXME(const-hack) replace `mem::replace` by `mem::take` when the latter is const ready | core/src/option | |
FIXME(const-hack) replace with `From` | core/src/ptr/unique | |
FIXME(const-hack) replace with min | core/src/ptr/mod | |
FIXME(const-hack) replace with range index | core/src/ffi/c_str core/src/ffi/c_str | |
FIXME(const-hack): Replace with `text.iter().pos(|c| *c == x)` | core/src/slice/memchr | |
FIXME(const-hack): Revert to `slice::get` when slice indexing becomes possible in const | core/src/unicode/unicode_data core/src/unicode/unicode_data tools/unicode-table-generator/src/range_search tools/unicode-table-generator/src/range_search | |
FIXME(const-hack): This implementation can be reverted when | core/src/slice/ascii | |
FIXME(const-hack): This should become `map` again, once it's `const` | core/src/str/error | |
FIXME(const-hack): This should just be `VecDeque::new_in(Global)` once that hits stable | alloc/src/collections/vec_deque/mod | |
FIXME(const-hack): This should use `?` again, once it's `const` | core/src/str/converts core/src/str/converts | |
FIXME(const-hack): Use `?` instead | core/src/slice/memchr | |
FIXME(const-hack): Used because the `?` operator is not allowed in a const context | core/src/num/mod | |
FIXME(const-hack): We would like to simply iterate using `for` loops but this isn't currently allowed in constant expressions | core/src/slice/ascii core/src/slice/ascii | |
FIXME(const-hack): We would like to simply use iterators for this (as in the original implementation), but this is not allowed in constant expressions | core/src/array/mod core/src/array/mod | |
FIXME(const-hack): Without const traits, we need this instead of `get_unchecked` | core/src/slice/mod core/src/slice/mod | |
FIXME(const-hack): could be written with `and_then` | core/src/option core/src/result | |
FIXME(const-hack): once Result::ok is const fn, use it here | core/src/char/convert | |
FIXME(const-hack): once then_some is const fn, use it here | core/src/char/methods | |
FIXME(const-hack): replace with `From` | core/src/ptr/unique | |
FIXME(const-hack): replace with cmp | core/src/num/int_macros | |
FIXME(const-hack): the const function `from_raw_parts` is used to make this | core/src/slice/mod | |
FIXME(const-hack): this implementation, which sidesteps using `Option::map` since it's not const | core/src/option | |
FIXME(const-hack): this implementation, which sidesteps using `Result::map` since it's not const | core/src/result core/src/result | |
FIXME(const-hack): use `and_then` once that is possible | core/src/time | |
FIXME(const-hack): use `map` once that is possible | core/src/option core/src/option | |
FIXME(const-hack): use get_unchecked | core/src/ffi/c_str | |
FIXME(const-hack): use unreachable! once that works in const | alloc/src/vec/in_place_collect | |
FIXME(const-hack, fee1-dead): use range slicing | core/src/slice/memchr | |
FIXME(const-trait): readd this | rustdoc/hide-complex-unevaluated-const-arguments | |
FIXME(const_generics): Add `DefKind::TyParam` and `SelfTyParam` once we support generic | rustc_resolve/src/late/diagnostics | |
FIXME(const_generics): Currently this only suggests one const parameter | ui/const-generics/infer/one-param-uninferred | |
FIXME(const_generics): Make sure that `<'a, 'b, const N: &'a &'b u32>` is sound | rustc_trait_selection/src/traits/query/type_op/implied_outlives_bounds rustc_trait_selection/src/traits/query/type_op/implied_outlives_bounds | |
FIXME(const_generics): This is a temporary and semi-artificial restriction until the | rustc_hir_analysis/src/hir_ty_lowering/bounds | |
FIXME(const_generics): create real const to allow fn items as const paths | rustc_hir_analysis/src/hir_ty_lowering/mod | |
FIXME(const_generics): handle paths when #67075 is fixed | rustc_lint/src/unused | Open |
FIXME(const_generics): having special methods for rustdoc in `rustc_hir_analysis` is cursed | rustc_hir_analysis/src/lib | |
FIXME(const_generics): these diagnostics are awful, because trait objects without `dyn` were | ui/const-generics/min_const_generics/const-expression-suggest-missing-braces | |
FIXME(const_generics): we should hide this error as we've already errored above | ui/const-generics/type-mismatch-in-nested-goal | |
FIXME(const_generics): we should suggest to the user how they can resolve this | rustc_trait_selection/src/error_reporting/traits/fulfillment_errors | |
FIXME(const_generics_defaults): It seems like we aren't testing the right thing here | ui/const-generics/defaults/default-annotation | |
FIXME(const_trait_impl) | rustc_hir_analysis/src/impl_wf_check/min_specialization rustc_trait_selection/src/error_reporting/traits/fulfillment_errors rustc_trait_selection/src/error_reporting/traits/fulfillment_errors tools/clippy/tests/ui/missing_const_for_fn/could_be_const tools/clippy/tests/ui/missing_const_for_fn/could_be_const | |
FIXME(const_trait_impl) #[const_trait] | core/src/ops/function core/src/ops/function core/src/ops/function | |
FIXME(const_trait_impl) ^ should error | ui/traits/const-traits/specialization/const-default-bound-non-const-specialized-bound | |
FIXME(const_trait_impl) add `const_trait` to `Fn` so we use `~const` | rustdoc/rfc-2632-const-trait-impl | |
FIXME(const_trait_impl) add effects | ui/traits/const-traits/const-trait-bounds-trait-objects | |
FIXME(const_trait_impl) aux-build:closure-in-foreign-crate.rs | ui/consts/closure-in-foreign-crate | |
FIXME(const_trait_impl) check constness | rustdoc/clean/mod | |
FIXME(const_trait_impl) check-pass | ui/traits/const-traits/call-generic-in-impl ui/traits/const-traits/call-generic-method-chain ui/traits/const-traits/call-generic-method-dup-bound ui/traits/const-traits/call-generic-method-pass ui/traits/const-traits/call ui/traits/const-traits/const_derives/derive-const-with-params | |
FIXME(const_trait_impl) const _: () = closure_in_foreign_crate::test(); | ui/consts/closure-in-foreign-crate | |
FIXME(const_trait_impl) constness | tools/clippy/clippy_utils/src/qualify_min_const_fn | |
FIXME(const_trait_impl) derive_const as suggestion? | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME(const_trait_impl) extern crate closure_in_foreign_crate; | ui/consts/closure-in-foreign-crate | |
FIXME(const_trait_impl) make it pass | ui/consts/const_cmp_type_id | |
FIXME(const_trait_impl) replace with `NonNull::from` | core/src/ffi/c_str | |
FIXME(const_trait_impl) restore `const_trait` to `Destruct` | rustdoc/rfc-2632-const-trait-impl | |
FIXME(const_trait_impl) revisit this | rustc_const_eval/src/check_consts/ops | |
FIXME(const_trait_impl) this should probably say constant closures | ui/traits/const-traits/const_closure-const_trait_impl-ice-113381 | |
FIXME(const_trait_impl) use original ipnsort approach with choose_unstable_small_sort | core/src/slice/sort/shared/smallsort | |
FIXME(const_trait_impl): ATPITs could be conditionally const? | rustc_middle/src/ty/mod | |
FIXME(const_trait_impl): Consider making the note/reason the message of the diagnostic | rustc_ast_passes/src/errors | |
FIXME(const_trait_impl): Do we need any of this on the non-const codepath? | rustc_const_eval/src/check_consts/ops | |
FIXME(const_trait_impl): Improve the span here | rustc_passes/src/stability | |
FIXME(const_trait_impl): Instead of suggesting `+ const Trait`, suggest | ui/traits/const-traits/unsatisfied-const-trait-bound | |
FIXME(const_trait_impl): Provide structured suggestions (e.g., add `const` / `#[const_trait]` here) | rustc_ast_passes/src/errors | |
FIXME(const_trait_impl): Should this be `is_const_fn_raw`? It depends on if we move | rustc_hir_typeck/src/callee | |
FIXME(const_trait_impl): Somehow emit `the trait bound `T: const Trait` | ui/traits/const-traits/unsatisfied-const-trait-bound | |
FIXME(const_trait_impl): The constness environment for const closures is wrong | ui/traits/const-traits/call-const-closure | |
FIXME(const_trait_impl): This API should be really reworked. It's dangerously general for | rustc_const_eval/src/check_consts/qualifs | |
FIXME(const_trait_impl): This should eventually be caught here | rustc_hir_typeck/src/callee | |
FIXME(const_trait_impl): Use this span with a better cause code | rustc_hir_typeck/src/callee | |
FIXME(const_trait_impl): We *could* enforce `&T: ~const Deref` here | rustc_hir_typeck/src/fn_ctxt/_impl | |
FIXME(const_trait_impl): We can probably use this `HostEffect` pred to render `~const` | rustdoc/clean/mod | |
FIXME(const_trait_impl): We could enforce these; they correspond to | rustc_hir_typeck/src/fn_ctxt/_impl | |
FIXME(const_trait_impl): We may need to do this using the higher-ranked | rustc_trait_selection/src/traits/fulfill | |
FIXME(const_trait_impl): We should be enforcing these effects unconditionally | rustc_hir_typeck/src/callee | |
FIXME(const_trait_impl): We should probably enforce these | rustc_hir_typeck/src/fn_ctxt/_impl | |
FIXME(const_trait_impl): We should recompute the predicate with `~const` | rustc_trait_selection/src/error_reporting/traits/fulfillment_errors | |
FIXME(const_trait_impl): When we do that, please make sure to also register | rustc_hir_analysis/src/check/check | |
FIXME(const_trait_impl): do a more fine-grained check whether this | rustc_const_eval/src/check_consts/check | |
FIXME(const_trait_impl): how is this supposed to interact with `#[rustc_const_stable_indirect]`? | rustc_passes/src/stability | |
FIXME(const_trait_impl): revert to span_bug? | rustc_const_eval/src/check_consts/ops | |
FIXME(const_trait_impl): should this behavior also be used by | rustc_next_trait_solver/src/solve/assembly/mod | |
FIXME(const_trait_impl): these arms should error because we can't enforce them | rustc_hir_typeck/src/callee | |
FIXME(const_trait_impl): we could perhaps do this for `Iterator` | rustc_const_eval/src/check_consts/ops | |
FIXME(const_trait_impl): we have to eventually allow some of these if these things can ever be stable | rustc_const_eval/src/check_consts/mod | |
FIXME(const_trait_impl, fee1-dead) revert to const destruct once it works again | tools/clippy/clippy_utils/src/qualify_min_const_fn | |
FIXME(coroutines): Do we want this to apply to synthetic coroutines? | rustc_borrowck/src/diagnostics/mod | |
FIXME(coroutines): Make this just return the `ClosureKind` directly? | rustc_borrowck/src/diagnostics/mod | |
FIXME(danielhenrymantilla): a private macro should need no stability guarantee | core/src/future/join | |
FIXME(davidtwco) translatable deprecated attr | rustc_lint/src/lints | |
FIXME(davidtwco): Support Split DWARF on Windows GNU - may require LLVM changes to | rustc_target/src/spec/base/windows_gnu rustc_target/src/spec/base/windows_gnullvm | |
FIXME(davidtwco): This is a hack to detect macros which produce spans of the | rustc_ast_passes/src/ast_validation | |
FIXME(davidtwco): avoid depending on the error message text | rustc_expand/src/mbe/diagnostics | |
FIXME(davidtwco): deliberately do not include `UNTRANSLATABLE_DIAGNOSTIC` and | rustc_lint/src/lib | |
FIXME(davidtwco): make translatable | rustc_lint/src/lints | |
FIXME(davidtwco): this isn't properly translatable because of the | rustc_lint/src/lints rustc_lint/src/lints | |
FIXME(davidtwco): this isn't properly translatable because of the pre/post | rustc_lint/src/lints | |
FIXME(davidtwco): translatable expected/found | rustc_lint/src/lints | |
FIXME(default_field_values): Implement formatting | tools/rustfmt/src/items | |
FIXME(default_field_values): This needs to be adjusted | tools/rustfmt/src/spanned | |
FIXME(default_type_parameter_fallback): Consider reallowing them once they work properly | ui/generic-const-items/parameter-defaults | |
FIXME(deferred_projection_equality): This isn't right, I think? | rustc_infer/src/infer/relate/lattice | |
FIXME(deferred_projection_equality): add a test that this is true during coherence | ui/traits/next-solver/alias-relate/alias_eq_cant_be_furthur_normalized | |
FIXME(denzp): add tests for `core::sync::atomic::*` | assembly/nvptx-atomics | |
FIXME(deref_patterns): At least detect that `box _` is irrefutable | rustc_pattern_analysis/src/rustc | |
FIXME(deref_patterns): The precise semantics are undecided; the rough idea is that | core/src/ops/deref | |
FIXME(deref_patterns): dedup temporaries to avoid multiple `deref()` calls? | rustc_mir_build/src/builder/matches/match_pair | |
FIXME(deref_patterns): fails to typecheck because `"foo"` has type &str but deref creates a | ui/pattern/deref-patterns/typeck_fail | |
FIXME(diagnostic_namespace): disallow filters for now | rustc_trait_selection/src/error_reporting/traits/on_unimplemented | |
FIXME(dianne): That note shouldn't depend on a coercion being blamed; see issue | rustc_borrowck/src/region_infer/mod | |
FIXME(dianne): this misses the case where users need both to deref and remove `&`s | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME(dingxiangfei2009): Investigate the set of attributes on target struct to be propagated to impls | rustc_builtin_macros/src/deriving/coerce_pointee | |
FIXME(dlrobertson): In order to use the VaArgSafe trait in a public interface | core/src/ffi/va_list | |
FIXME(dtolnay): We actually want both of these to work. I think it's | ui/macros/format-args-temporaries-in-write | |
FIXME(dyn-star) | tools/clippy/clippy_utils/src/qualify_min_const_fn | |
FIXME(dyn-star) same FIXME as above applies here too | rustc_middle/src/ty/layout | |
FIXME(dyn-star): Do the right thing with DynKinds | rustc_codegen_cranelift/src/value_and_place | |
FIXME(dyn-star): We probably have to do a bitcast first, then inttoptr | rustc_codegen_ssa/src/base | |
FIXME(dyn-star): We should regionck this implementation | rustc_hir_analysis/src/coherence/builtin | |
FIXME(dyn-star): make sure nothing needs to be done here | rustc_mir_transform/src/validate | |
FIXME(dyn-star): need to update v0 mangling docs | rustc_symbol_mangling/src/v0 | |
FIXME(dyn_compat_renaming): Rename test and update comment | rustc_hir_analysis/src/coherence/mod | |
FIXME(dyn_compat_renaming): Update URL and link text | std/src/keyword_docs | |
FIXME(dyn_compat_renaming): Update the URL | rustc_trait_selection/src/error_reporting/traits/mod | |
FIXME(dyn_compat_renaming): Update the URL once the Reference is updated | rustdoc/html/render/print_item | |
FIXME(dyn_compat_renaming): Update the URL once the Reference is updated and hits stable | rustdoc-json-types/lib | |
FIXME(dyn_star): Make this into a derive | ui/dyn-star/drop | |
FIXME(dyn_star): We should probably allow things like casting from | rustc_hir_typeck/src/coercion | |
FIXME(ecstaticmorse): Maybe we should `bug` here? This should probably only be | rustc_middle/src/ty/util | |
FIXME(eddyb) Get more valid `Span`s on queries | rustc_query_system/src/query/mod | |
FIXME(eddyb) Improve unoptimized codegen to avoid the temporary | ui/codegen/issue-28950 | |
FIXME(eddyb) Precompute a custom symbol name based on attributes | rustc_symbol_mangling/src/lib | |
FIXME(eddyb) This could be more efficient with a "gap buffer" | rustc_middle/src/mir/mod | |
FIXME(eddyb) This one doesn't even compile because of the unsupported syntax | ui/associated-types/associated-types-project-from-hrtb-in-struct | |
FIXME(eddyb) We could find a better approximation if ity.align < align | rustc_codegen_gcc/src/type_ | |
FIXME(eddyb) `legacy` mangling uses `{{closure}}`, while `v0` | codegen/internalize-closures | |
FIXME(eddyb) `pub` only for `ExecutionStrategy` below | proc_macro/src/bridge/server | |
FIXME(eddyb) add debuginfo for unsized places too | rustc_codegen_ssa/src/mir/debuginfo | |
FIXME(eddyb) almost all of this should be in `rustc_codegen_ssa::mir::debuginfo` | rustc_codegen_llvm/src/debuginfo/create_scope_map | |
FIXME(eddyb) always use the shortest range, e.g., by finding | rustc_abi/src/lib | |
FIXME(eddyb) avoid computing this if possible, when `instance` is | rustc_codegen_ssa/src/mir/block | |
FIXME(eddyb) avoid passing information like this, and instead add more | rustc_middle/src/ty/layout | |
FIXME(eddyb) avoid printing twice (needed to ensure | rustc_middle/src/ty/print/pretty | |
FIXME(eddyb) avoid rechecking UTF-8 validity | rustc_symbol_mangling/src/v0 | |
FIXME(eddyb) benchmark if this would be faster as a `VecDeque` | rustc_passes/src/reachable | |
FIXME(eddyb) build a better abstraction for permutations, if possible | rustc_abi/src/lib rustc_index/src/slice rustc_ty_utils/src/layout | |
FIXME(eddyb) compute both `trait_` and `for_` from | rustdoc/clean/blanket_impl | |
FIXME(eddyb) consolidate this and other methods that find the appropriate | rustc_abi/src/lib | |
FIXME(eddyb) deduplicate this with the identical | rustc_codegen_ssa/src/mir/operand | |
FIXME(eddyb) describe the `F` type (e.g. via `type_name::<F>`) once panic | proc_macro/src/bridge/selfless_reify | |
FIXME(eddyb) does this matter at all for promotion? | rustc_mir_transform/src/promote_consts | |
FIXME(eddyb) does this need to be separate from `loc.line` for some reason? | rustc_codegen_llvm/src/debuginfo/mod | |
FIXME(eddyb) find a better name; this is more general than "printing" | rustc_middle/src/ty/print/mod | |
FIXME(eddyb) find a common convention for all of the debuginfo-related | rustc_codegen_gcc/src/debuginfo rustc_codegen_llvm/src/debuginfo/mod rustc_codegen_llvm/src/debuginfo/mod rustc_codegen_ssa/src/traits/backend rustc_codegen_ssa/src/traits/debuginfo rustc_codegen_ssa/src/traits/debuginfo rustc_codegen_ssa/src/traits/debuginfo | |
FIXME(eddyb) find a nicer way to do this | rustc_codegen_gcc/src/intrinsic/mod rustc_codegen_llvm/src/intrinsic | |
FIXME(eddyb) find a place for this (or a way to replace it) | rustc_codegen_ssa/src/debuginfo/mod | |
FIXME(eddyb) find something better to key this on | rustc_middle/src/ty/print/pretty | |
FIXME(eddyb) generate these impls by pattern-matching on the | proc_macro/src/bridge/client | |
FIXME(eddyb) get a better `span` here | rustc_middle/src/ty/layout rustc_middle/src/ty/layout | |
FIXME(eddyb) ignoring `obligations` might cause false positives | rustdoc/clean/blanket_impl | |
FIXME(eddyb) investigate more compact encodings for sparse tables | rustc_metadata/src/rmeta/table | |
FIXME(eddyb) is this `+ 1` needed at all? | rustc_codegen_ssa/src/mir/debuginfo | |
FIXME(eddyb) is this `doc(hidden)` check needed? | rustdoc/passes/collect_trait_impls | |
FIXME(eddyb) is this really needed? | rustc_codegen_ssa/src/mir/debuginfo | |
FIXME(eddyb) make this O(1) by using a pre-cached query name `EventId` | rustc_query_impl/src/profiling_support | |
FIXME(eddyb) make this a `ty::TraitRef<'tcx>` set | rustdoc/core | |
FIXME(eddyb) maybe cache this? | rustc_mir_transform/src/promote_consts | |
FIXME(eddyb) maybe include I128 in the future, when it works everywhere | rustc_abi/src/lib | |
FIXME(eddyb) maybe include the crate name in this? | rustc_metadata/src/fs | |
FIXME(eddyb) maybe replace `Bridge::enter` with this? | proc_macro/src/bridge/client | |
FIXME(eddyb) maybe use something like this for an unified `fn_abi_of`, not | rustc_middle/src/ty/layout | |
FIXME(eddyb) move all the code accessing internal fields like this | rustc_lint/src/context | |
FIXME(eddyb) pass `&CStr` directly to FFI once it's a thin pointer | rustc_codegen_llvm/src/builder | |
FIXME(eddyb) pass something else for the name so no work is done | rustc_codegen_ssa/src/mir/place rustc_codegen_ssa/src/mir/place | |
FIXME(eddyb) perhaps compute this on the fly if cheap enough? | rustc_metadata/src/rmeta/mod | |
FIXME(eddyb) perhaps group the signature/type-containing (or all of them?) | rustc_ty_utils/src/abi | |
FIXME(eddyb) perhaps make this mandatory to get contexts to track it better? | rustc_middle/src/ty/layout | |
FIXME(eddyb) perhaps move some of this logic into | rustc_codegen_cranelift/src/abi/mod rustc_codegen_ssa/src/mir/block | |
FIXME(eddyb) perhaps use `ItemLocalId` instead? | rustc_passes/src/upvars | |
FIXME(eddyb) print this with `print_def_path` | rustc_middle/src/ty/print/pretty | |
FIXME(eddyb) producing readable type names for trait objects can result | rustc_codegen_gcc/src/type_of rustc_codegen_llvm/src/type_of | |
FIXME(eddyb) rename `llbb` and other `ll`-prefixed things to use a | rustc_codegen_ssa/src/mir/block | |
FIXME(eddyb) rename `llbbs` and other `ll`-prefixed things to use a | rustc_codegen_ssa/src/mir/mod | |
FIXME(eddyb) rename this to `eh_pad_for_uncached` | rustc_codegen_ssa/src/mir/block | |
FIXME(eddyb) rename this to `eh_pad_for` | rustc_codegen_ssa/src/mir/block | |
FIXME(eddyb) rename this to `eh_pads` | rustc_codegen_ssa/src/mir/mod | |
FIXME(eddyb) rename this to better indicate it's a duplicate of | rustc_codegen_gcc/src/debuginfo rustc_codegen_gcc/src/debuginfo rustc_codegen_llvm/src/debuginfo/mod rustc_codegen_llvm/src/debuginfo/mod | |
FIXME(eddyb) replace `llvm.dbg.declare` with `llvm.dbg.addr` | rustc_codegen_llvm/src/debuginfo/mod | |
FIXME(eddyb) replace this with a `Function` "subclass" of `Value` | rustc_codegen_llvm/src/common | |
FIXME(eddyb) replace this with something typed, like an `enum` | rustc_ty_utils/src/abi | |
FIXME(eddyb) replace uses of this with `append_sibling_block` | rustc_codegen_ssa/src/traits/builder | |
FIXME(eddyb) shorten the name so windows doesn't choke on it | ui/traits/object/with-self-in-projection-output-repeated-supertrait | |
FIXME(eddyb) should use `def_span` | rustc_middle/src/ty/print/pretty rustc_middle/src/ty/print/pretty rustc_middle/src/ty/print/pretty | |
FIXME(eddyb) shouldn't `ArgumentVariable` indices | rustc_codegen_ssa/src/mir/debuginfo | |
FIXME(eddyb) shouldn't `ArgumentVariable` indices be | rustc_codegen_ssa/src/mir/debuginfo | |
FIXME(eddyb) take `whole_local_var.source_info.scope` into | rustc_codegen_ssa/src/mir/debuginfo | |
FIXME(eddyb) take into account that arguments always have debuginfo | rustc_codegen_gcc/src/debuginfo rustc_codegen_llvm/src/debuginfo/create_scope_map | |
FIXME(eddyb) the `void @` forces a match on the instruction, instead of the | codegen/drop | |
FIXME(eddyb) there should be a size cap here | rustc_target/src/callconv/x86_win64 | |
FIXME(eddyb) these are scalar components | rustc_codegen_ssa/src/mir/debuginfo | |
FIXME(eddyb) this calls `decode` for each argument, but in reverse | proc_macro/src/bridge/mod | |
FIXME(eddyb) this calls `encode` for each argument, but in reverse | proc_macro/src/bridge/mod | |
FIXME(eddyb) this can be vec![[0: LEN]] pending | ui/codegen/issue-28950 | |
FIXME(eddyb) this could be `trait` impls except for the `const fn` requirement | proc_macro/src/bridge/selfless_reify | |
FIXME(eddyb) this could be a bit more specific than `AlreadyReported` | rustc_const_eval/src/interpret/eval_context | |
FIXME(eddyb) this doesn't account for the macro-related | rustc_codegen_gcc/src/debuginfo | |
FIXME(eddyb) this doesn't belong here AFAICT, should be moved to callsite | rustc_errors/src/lib | |
FIXME(eddyb) this is an awkward spot for this method, maybe move it? | rustc_middle/src/ty/context | |
FIXME(eddyb) this might be incorrect - it doesn't | rustc_abi/src/layout rustc_abi/src/layout | |
FIXME(eddyb) this should be unnecessary, as the shallowly resolved | rustc_type_ir/src/ty_kind/closure | |
FIXME(eddyb) this should ideally not be needed | rustc_symbol_mangling/src/v0 | |
FIXME(eddyb) this was supposed to be `RefMutZst` with `&mut []` | ui/symbol-names/const-generics-structural-demangling | |
FIXME(eddyb) this would be `self.monomorphize(&callee)` | rustc_codegen_llvm/src/debuginfo/create_scope_map | |
FIXME(eddyb) try to move this into the parent's printing | rustc_middle/src/ty/print/mod | |
FIXME(eddyb) try to remove the lifetime from `BridgeConfig`, that'd help | proc_macro/src/bridge/selfless_reify | |
FIXME(eddyb) use `retain` on `macro_backtrace` to remove all the | rustc_errors/src/emitter | |
FIXME(eddyb) use a better `TyContext` here | rustc_middle/src/mir/visit | |
FIXME(eddyb) use a specialized hex-encoding loop | rustc_symbol_mangling/src/v0 | |
FIXME(eddyb) use lang items for methods instead of names | rustc_ty_utils/src/instance | |
FIXME(eddyb) use small vector optimization for the common case | rustc_abi/src/lib | |
FIXME(eddyb) use smallvec here | rustc_codegen_ssa/src/mir/debuginfo | |
FIXME(eddyb) we should probably roll our own punycode implementation | rustc_symbol_mangling/src/v0 | |
FIXME(eddyb): Figure out when the simpler Store is safe, clang | rustc_codegen_gcc/src/intrinsic/mod | |
FIXME(eddyb): We should figure out how to use llvm.dbg.value instead | rustc_codegen_ssa/src/mir/mod | |
FIXME(eddyb, varkor) handle type paths here too, not just value ones | rustc_hir_analysis/src/hir_ty_lowering/mod | |
FIXME(edition_2024): Change this to `-Wrust_2024_idioms` when all | bootstrap/src/core/builder/cargo | |
FIXME(edition_2024): Fix the `keyword_idents_2024` lint to not trigger here? | rustc_macros/src/diagnostics/diagnostic rustc_macros/src/diagnostics/diagnostic rustc_macros/src/diagnostics/subdiagnostic rustc_macros/src/try_from | |
FIXME(edition_2024): switch back to a normal method call | rustc_mir_transform/src/inline rustc_mir_transform/src/inline | |
FIXME(emilio): We could avoid this most of the time if needed, but | tools/rustfmt/src/format-diff/main | |
FIXME(erikdesjardins): handle non-default addrspace ptr sizes | rustc_codegen_cranelift/src/common rustc_codegen_llvm/src/asm rustc_codegen_llvm/src/asm rustc_codegen_ssa/src/debuginfo/mod rustc_codegen_ssa/src/mir/place rustc_middle/src/ty/layout rustc_middle/src/ty/layout rustc_middle/src/ty/layout | |
FIXME(erikdesjardins): ignoring address space is technically wrong, pointers in | rustc_abi/src/lib rustc_abi/src/lib | |
FIXME(erikdesjardins): we should be parsing nonzero address spaces | rustc_abi/src/lib | |
FIXME(estebank): once support to add notes in `rustc_on_unimplemented` | core/src/marker | |
FIXME(estebank): unify with `report_similar_impl_candidates`. The message is similar | rustc_trait_selection/src/error_reporting/infer/mod | |
FIXME(estebank): we could also verify that the arguments being | rustc_hir_analysis/src/hir_ty_lowering/errors rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME(explicit_tail_calls) | rustc_const_eval/src/interpret/call tools/miri/tests/fail/tail_calls/signature-mismatch-arg | |
FIXME(explicit_tail_calls) code duplication with `build_scope_drops` | rustc_mir_build/src/builder/scope | |
FIXME(explicit_tail_calls): add a diagnostic note that `become` doesn't allow coercions | rustc_hir_typeck/src/expr | |
FIXME(explicit_tail_calls): add support for tail calls to the cranelift backend, once cranelift supports tail calls | rustc_codegen_cranelift/src/base | |
FIXME(explicit_tail_calls): determine if we need to do something here (probably | rustc_mir_transform/src/dataflow_const_prop | |
FIXME(explicit_tail_calls): enable this test once rustc_codegen_ssa supports tail calls | ui/explicit-tail-calls/drop-order | |
FIXME(explicit_tail_calls): figure out how exactly functions containing tail | rustc_mir_transform/src/inline | |
FIXME(explicit_tail_calls): figure out if we can inline tail calls | rustc_mir_transform/src/inline | |
FIXME(explicit_tail_calls): highlight tail calls as "recursive call site" | rustc_mir_transform/src/check_call_recursion | |
FIXME(explicit_tail_calls): highlight the `...` | rustc_mir_build/src/check_tail_calls | |
FIXME(explicit_tail_calls): highlight the function or something | rustc_mir_build/src/check_tail_calls | |
FIXME(explicit_tail_calls): implement tail calls in ssa backend | rustc_codegen_ssa/src/mir/block | |
FIXME(explicit_tail_calls): implement tail-call specific checks here (such | rustc_mir_transform/src/validate | |
FIXME(explicit_tail_calls): maybe get `become` a new error | rustc_ty_utils/src/consts | |
FIXME(explicit_tail_calls): overloaded index is represented like `[&]*x.index(i)` | ui/explicit-tail-calls/become-operator | |
FIXME(explicit_tail_calls): refactor this & add tail-call specific checks | rustc_mir_transform/src/validate | |
FIXME(explicit_tail_calls): should we have the span for `become`? is this span accurate? do we need it? | rustc_middle/src/mir/syntax | |
FIXME(explicit_tail_calls): this currently fails for cases where opaques are used | rustc_mir_build/src/check_tail_calls | |
FIXME(explicit_tail_calls): uhhhh I think we can return without return now, does it change anything | rustc_const_eval/src/check_consts/check | |
FIXME(f16_f128): Add `q: F128;` once LLVM support the `Q` extension | rustc_target/src/asm/riscv | |
FIXME(f16_f128): Change back to `$func(x: $ty) -> $ty` once arm64ec can pass and return | assembly/asm/aarch64-types | |
FIXME(f16_f128): Only needed for FIXME in check! and check_reg! | assembly/asm/aarch64-types assembly/asm/aarch64-types | |
FIXME(f16_f128): See FIXME in `check!` | assembly/asm/aarch64-types | |
FIXME(f16_f128): When available, compare to the library parser as with `f32` and `f64` | rustc_mir_build/src/builder/mod rustc_mir_build/src/builder/mod | |
FIXME(f16_f128): `f16` and `f128` have no MSVC representation. We could improve the | rustc_codegen_llvm/src/debuginfo/metadata | |
FIXME(f16_f128): add `f16` and `f128` when these types become stable | tools/clippy/clippy_lints/src/approx_const | |
FIXME(f16_f128): add a clamp test once the function is available | tools/clippy/tests/ui-toml/toml_disallowed_methods/conf_disallowed_methods | |
FIXME(f16_f128): add f16 and f128 when constants are available | tools/clippy/clippy_lints/src/manual_float_methods tools/clippy/clippy_lints/src/manual_float_methods | |
FIXME(f16_f128): add math tests when available | std/src/f16/tests | |
FIXME(f16_f128): add tests for these types once const casting is available | tools/clippy/tests/ui/cast_lossless_float | |
FIXME(f16_f128): add tests for these types once constants are available | tools/clippy/tests/ui/manual_float_methods | |
FIXME(f16_f128): add tests for these types once math functions are available | tools/clippy/tests/ui/floating_point_log | |
FIXME(f16_f128): add tests for these types when `powf` is available | tools/clippy/tests/ui/floating_point_powf | |
FIXME(f16_f128): add tests for these types when abs is available | tools/clippy/tests/ui/float_equality_without_abs | |
FIXME(f16_f128): add tests once const casting is available for these types | tools/clippy/tests/ui/cast | |
FIXME(f16_f128): add tests when constants are available | tools/clippy/tests/ui/cast_nan_to_int | |
FIXME(f16_f128): add tests when exp is available | tools/clippy/tests/ui/floating_point_exp | |
FIXME(f16_f128): add tests when math functions are available | tools/clippy/tests/ui/unused_rounding | |
FIXME(f16_f128): add these types when `{to_from}_*_bytes` are available | tools/clippy/tests/ui/endian_bytes | |
FIXME(f16_f128): add these types when binary operations are available on all platforms | tools/clippy/clippy_utils/src/consts | |
FIXME(f16_f128): add these types when eq is available on all platforms | tools/clippy/clippy_lints/src/zero_div_zero | |
FIXME(f16_f128): add these types when nan checks are available on all platforms | tools/clippy/clippy_lints/src/casts/cast_nan_to_int | |
FIXME(f16_f128): add this check once `is_infinite` is reliable (ABI | rustc_lint/src/types/literal | |
FIXME(f16_f128): add when casting is available on all platforms | tools/clippy/clippy_lints/src/operators/modulo_arithmetic | |
FIXME(f16_f128): add when equality check is available on all platforms | tools/clippy/clippy_lints/src/operators/float_cmp | |
FIXME(f16_f128): add when supported | tools/miri/tests/pass/float tools/miri/tests/pass/float | |
FIXME(f16_f128): adding additional `From<{float}>` impls to `f32` breaks inference. See | core/src/convert/num | |
FIXME(f16_f128): almost all methods in this `impl` are missing examples and a const | core/src/num/f128 core/src/num/f16 | |
FIXME(f16_f128): also test f16 and f128 | ui/float/classify-runtime-const | |
FIXME(f16_f128): const casting is not yet supported for these types. Add when available | tools/clippy/tests/ui/float_cmp | |
FIXME(f16_f128): do a check like the others when parsing is available | tools/clippy/clippy_lints/src/float_literal | |
FIXME(f16_f128): enable f16 and f128 conversions once const eval supports them | tools/clippy/tests/ui/cast_size | |
FIXME(f16_f128): in order to avoid crashes building `core`, always inline to skip | rustc_mir_transform/src/cross_crate_inline | |
FIXME(f16_f128): just use `parse()` directly when available for `f16`/`f128` | tools/clippy/clippy_utils/src/consts | |
FIXME(f16_f128): once conversions to/from `f128` are available on all platforms | tools/clippy/clippy_utils/src/consts | |
FIXME(f16_f128): only tested on platforms that have symbols and aren't buggy | std/src/f128/tests std/src/f16/tests | |
FIXME(f16_f128): remove gate when ABI issues are resolved | ui/half-open-range-patterns/half-open-range-pats-semantics ui/half-open-range-patterns/half-open-range-pats-semantics ui/half-open-range-patterns/half-open-range-pats-semantics ui/half-open-range-patterns/half-open-range-pats-semantics ui/half-open-range-patterns/half-open-range-pats-semantics ui/half-open-range-patterns/half-open-range-pats-semantics | |
FIXME(f16_f128): remove gates when ABI issues are resolved | ui/match/match-float | |
FIXME(f16_f128): replace with `intrinsics::fabsf128` when available | core/src/num/f128 | |
FIXME(f16_f128): replace with `intrinsics::fabsf16` when available | core/src/num/f16 | |
FIXME(f16_f128): replace with a `test_num` call once the required `fmodl`/`fmodf128` | std/src/f128/tests | |
FIXME(f16_f128): test subnormals when powf is available | std/src/f128/tests std/src/f16/tests | |
FIXME(fee1-dead) do not use stringly typed `ConstContext` | rustc_const_eval/src/errors | |
FIXME(fee1-dead) these could be variants of the UB info enum instead of this | rustc_const_eval/src/interpret/call | |
FIXME(fee1-dead) these should all be actual variants of the enum instead of dynamically | rustc_middle/src/mir/interpret/error | |
FIXME(fee1-dead), HACK: we want to use the error as title therefore we can just extract the | rustc_const_eval/src/interpret/eval_context | |
FIXME(fee1-dead): assert_eq | core/tests/hash/mod | |
FIXME(fee1-dead): use debug_assert_eq | core/src/hash/sip | |
FIXME(flip1995): See comment in `mangle_typeid_for_fnabi` | rustc_symbol_mangling/src/v0 | |
FIXME(flip1995): The virtual function elimination optimization only works with full LTO in | rustc_codegen_llvm/src/debuginfo/metadata | |
FIXME(fmease): Copied from `rustc_hir_typeck::method::probe`. Deduplicate | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME(fmease): Currently creating throwaway `parent_args` to please | rustc_hir_analysis/src/hir_ty_lowering/mod | |
FIXME(fmease): Deduplicate | rustc_hir_analysis/src/errors | |
FIXME(fmease): Don't compare lexically but respect de Bruijn indices etc. to handle shadowing correctly | rustdoc/clean/mod rustdoc/clean/mod | |
FIXME(fmease): Heavily adapted from `rustc_hir_typeck::method::suggest`. Deduplicate | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME(fmease): I'd prefer to report a cycle error here instead of an overflow one | ui/associated-inherent-types/normalization-overflow | |
FIXME(fmease): It'd make a lot of sense to just incorporate this logic into `clean_ty_generics` | rustdoc/clean/simplify | |
FIXME(fmease): This is very likely reachable | rustc_hir_analysis/src/coherence/orphan | |
FIXME(fmease): This one is pretty bad | ui/const-generics/bad-const-generic-exprs | |
FIXME(fmease): This was copied in parts from an old version of `rustc_hir_typeck::method::suggest` | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME(fmease): Write explainer | rustc_lint_defs/src/builtin | |
FIXME(fmease): `rustc_hir_typeck::method::suggest` uses a `skip_list` to filter out some bounds | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME(fn_delegation): Alternatives for target expression lowering | rustc_ast_lowering/src/delegation | |
FIXME(fn_delegation): Default parameters are not inherited, because they are | rustc_hir_analysis/src/delegation | |
FIXME(fn_delegation): Delegation to inherent methods is not yet supported | rustc_hir_typeck/src/method/probe | |
FIXME(fn_delegation): In delegation item argument spans are equal to last path | rustc_trait_selection/src/error_reporting/infer/need_type_info | |
FIXME(fn_delegation): Move generics inheritance to the AST->HIR lowering | rustc_hir_analysis/src/delegation | |
FIXME(fn_delegation): This often leads to type inference | rustc_hir_analysis/src/delegation | |
FIXME(fn_delegation): `recursive delegation` error should be emitted here | ui/delegation/ice-issue-124347 | |
FIXME(fn_delegation): this is supposed to work eventually | ui/delegation/generics/free-fn-to-free-fn | |
FIXME(fn_delegation): use function delegation instead of manually forwarding | rustc_ast/src/attr/mod rustc_hir/src/hir | |
FIXME(gen_blocks): Do we want to unconditionally parse `gen` and then | rustc_parse/src/parser/mod | |
FIXME(gen_blocks): Parse `gen async` and suggest swap | rustc_parse/src/parser/expr | |
FIXME(gen_blocks): This perhaps should be a different gate | rustc_parse/src/parser/expr | |
FIXME(gen_blocks): This probably could be deduplicated | core/src/async_iter/async_iter | |
FIXME(gen_blocks): This span is wrong, didn't want to think about it | rustc_parse/src/parser/item | |
FIXME(gen_blocks): add keyword recovery logic for genness | rustc_parse/src/parser/item | |
FIXME(gen_blocks): emit a similar error for `gen fn()` | rustc_parse/src/parser/ty | |
FIXME(gen_blocks): how does `closure_track_caller`/`async_fn_track_caller` | rustc_ast_lowering/src/lib | |
FIXME(generic-associated-types): Addresses aggressive inference in #92917 | rustc_trait_selection/src/traits/select/mod | Closed |
FIXME(generic-associated-types): This only detects one layer of inference | rustc_trait_selection/src/traits/select/mod | |
FIXME(generic_associated_types): Remove one of the below bounds | ui/generic-associated-types/issue-88595 | |
FIXME(generic_const_exprs) | rustc_middle/src/ty/print/pretty | |
FIXME(generic_const_exprs): Consider accepting a `ty::UnevaluatedConst` when we are not rolling our own | rustc_trait_selection/src/traits/mod rustc_trait_selection/src/traits/mod | |
FIXME(generic_const_exprs): Implement handling for generic | rustc_next_trait_solver/src/solve/mod | |
FIXME(generic_const_exprs): May want to look inside const here | rustc_privacy/src/lib | |
FIXME(generic_const_exprs): Occurs check failures for unevaluated | rustc_infer/src/infer/relate/generalize | |
FIXME(generic_const_exprs): Remove this bodge once that feature is stable | rustc_hir/src/def | |
FIXME(generic_const_exprs): Revisit this before stabilization | rustc_lint/src/builtin ui/const-generics/generic_const_exprs/type-alias-bounds | |
FIXME(generic_const_exprs): See comment in `fulfill.rs` | rustc_trait_selection/src/traits/select/mod | |
FIXME(generic_const_exprs): This doesn't recurse into `<T as Trait<U>>::ASSOC`'s args | rustc_trait_selection/src/traits/const_evaluatable | |
FIXME(generic_const_exprs): This is incorrect when dealing with unused const params | rustc_hir_analysis/src/check/wfcheck | |
FIXME(generic_const_exprs): Verify/explain why this is sound | rustc_ty_utils/src/consts | |
FIXME(generic_const_exprs): We currently only do this for anonymous constants | rustc_ty_utils/src/consts | |
FIXME(generic_const_exprs): We may want to support these | rustc_ty_utils/src/consts | |
FIXME(generic_const_exprs): `ConstEvaluatable` can be written | rustc_lint/src/builtin | |
FIXME(generic_const_exprs): come up with a less brittle test for this using assoc consts | ui/const-generics/generic_const_exprs/nested_uneval_unification-2 | |
FIXME(generic_const_exprs): is it possible to relate two consts which are not identical | rustc_middle/src/ty/relate | |
FIXME(generic_const_exprs): relating the `ty()`s is a little weird since it is supposed to | rustc_middle/src/ty/relate | |
FIXME(generic_const_exprs): should this do something? | rustdoc/clean/mod | |
FIXME(generic_const_exprs): this can mention `Self` | rustc_trait_selection/src/traits/dyn_compatibility | |
FIXME(generic_const_exprs): this doesn't verify that given `Expr(N + 1)` the | rustc_trait_selection/src/traits/wf | |
FIXME(generic_const_exprs): this feels wrong to have in `encode_mir` | rustc_metadata/src/rmeta/encoder | |
FIXME(generic_const_exprs): we have a fully concrete `ConstKind::Expr`, but | rustc_trait_selection/src/traits/const_evaluatable | |
FIXME(generic_const_exprs): we should construct an alias like | rustc_trait_selection/src/traits/fulfill | |
FIXME(generic_const_exprs): we would need to support generic consts here | rustc_next_trait_solver/src/solve/normalizes_to/mod | |
FIXME(generic_const_exprs): you can absolutely add this as a where clauses | rustc_trait_selection/src/traits/auto_trait | |
FIXME(generic_const_exprs, default_field_values): this is a hack and needs to | rustc_hir_analysis/src/check/wfcheck | |
FIXME(generic_const_items): Add support for generic associated consts | rustdoc/json/conversions rustdoc/json/conversions | |
FIXME(generic_const_items): Add support for generic const items | rustdoc/json/conversions rustdoc/json/conversions | |
FIXME(generic_const_items): Add support for generic free consts | rustdoc/json/conversions | |
FIXME(generic_const_items): I don't think checking `generics.hwcp` suffices as it | tools/clippy/clippy_lints/src/large_const_arrays | |
FIXME(generic_const_items): If possible extract the common parts of `compare_{type,const}_predicate_entailment` | rustc_hir_analysis/src/check/compare_impl_item | |
FIXME(generic_const_items): Pass the generics as a parameter | rustc_expand/src/build | |
FIXME(generic_const_items): Provide a structured suggestion to merge the first | rustc_parse/src/parser/item | |
FIXME(generic_const_items): This looks like a bug to me. I expected that we wouldn't emit any | ui/generic-const-items/trivially-unsatisfied-bounds-1 | |
FIXME(generic_const_items): We should provide a structured sugg to merge the 1st into the 2nd WC | ui/generic-const-items/duplicate-where-clause | |
FIXME(guard_patterns): convert this to a normal guard instead | rustc_parse/src/parser/expr | |
FIXME(guard_patterns): implement guard pattern lowering | rustc_mir_build/src/thir/pattern/mod | |
FIXME(guard_patterns): suggest this regardless of a match arm | rustc_parse/src/parser/pat | |
FIXME(guswynn) update this test when async-fn-in-traits works | ui/lint/unused/unused-async | |
FIXME(hack_recover_crate_name): Remove this module | tools/rust-analyzer/crates/rust-analyzer/src/hack_recover_crate_name | |
FIXME(hkmatsumoto): Might be better to trigger | rustc_parse/src/parser/stmt | |
FIXME(rust-lang/rfcs/issues/811) Nested method calls | rustc_hir_analysis/src/check/region | |
FIXME(rust-lang/rust/issues/114583): Remove this when <OsStr as Debug>::fmt matches <str as Debug>::fmt | std/src/sys/pal/hermit/os std/src/sys/pal/sgx/os std/src/sys/pal/solid/os std/src/sys/pal/teeos/os std/src/sys/pal/uefi/os std/src/sys/pal/unix/os std/src/sys/pal/unsupported/os std/src/sys/pal/wasi/os std/src/sys/pal/windows/os std/src/sys/pal/xous/os std/src/sys/pal/xous/os | |
FIXME(rust-lang/rust/issues/77425) | rustc_mir_transform/src/check_const_item_mutation | |
FIXME(impl_trait_in_bindings): We don't really have a good way of | rustc_resolve/src/def_collector | |
FIXME(import_trait_associated_functions): associate `const` or `fn` are not importable unless | rustc_resolve/src/lib | |
FIXME(import_trait_associated_functions): remove this when `import_trait_associated_functions` is stable | rustc_resolve/src/diagnostics | |
FIXME(in 2040 or so): once the minimum kernel version is 5.6, remove the | std/src/sys/random/linux | Closed |
FIXME(inherent_associated_types) | ui/associated-inherent-types/type-alias-bounds | |
FIXME(inherent_associated_types): Acquiring the ParamEnv this early leads to cycle errors | rustc_hir_analysis/src/hir_ty_lowering/mod | |
FIXME(inherent_associated_types): Avoid emitting two diagnostics (they only differ in span) | ui/associated-inherent-types/issue-109789 | |
FIXME(inherent_associated_types): Below we link to `Proj` but we should link to `Proj-1` | rustdoc/inherent-projections | |
FIXME(inherent_associated_types): Enhancement: Spruce up the diagnostic by saying something like | ui/associated-inherent-types/issue-109789 | |
FIXME(inherent_associated_types): Extend this to support `ty::Inherent`, too | rustc_infer/src/infer/opaque_types/mod rustc_trait_selection/src/error_reporting/infer/note_and_explain | |
FIXME(inherent_associated_types): Figure out which error would be more helpful here | ui/associated-inherent-types/not-found-self-type-differs-shadowing-trait-item | |
FIXME(inherent_associated_types): Find similarly named associated types and suggest them | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME(inherent_associated_types): Merge this function with `fn compute_alias` | rustc_trait_selection/src/traits/wf | |
FIXME(inherent_associated_types): Most likely we can just map to `GenericType` like above | rustc_middle/src/ty/inhabitedness/mod | |
FIXME(inherent_associated_types): Once we support non-ADT self-types (#106719) | rustdoc/html/format | Open |
FIXME(inherent_associated_types): Revisit this decision once the implementation is smarter | ui/associated-inherent-types/dont-select-if-disabled | |
FIXME(inherent_associated_types): Should this happen inside of a snapshot? | rustc_trait_selection/src/traits/wf | |
FIXME(inherent_associated_types): Since we can't pass along the self type to the | rustc_trait_selection/src/traits/project | |
FIXME(inherent_associated_types): The example code above currently leads to a cycle | rustc_hir_analysis/src/coherence/orphan | |
FIXME(inherent_associated_types): The intra-doc link below should point to `Proj-1` not `Proj` | rustdoc/intra-doc/inherent-associated-types | |
FIXME(inherent_associated_types): This is incompatible with the new solver and lazy norm! | rustc_trait_selection/src/traits/wf | |
FIXME(inherent_associated_types): This should fail | ui/associated-inherent-types/bugs/wf-check-skipped | |
FIXME(inherent_associated_types): This should pass | ui/associated-inherent-types/bugs/cycle-iat-inside-of-adt | |
FIXME(inherent_associated_types): This shouldn't lead to a cycle error | ui/associated-inherent-types/bugs/cycle-iat-inside-of-where-predicate | |
FIXME(inherent_associated_types): Use the explicit predicates from the parent impl | rustc_hir_analysis/src/outlives/implicit_infer | |
FIXME(inherent_associated_types): We always link to the very first associated | rustdoc/html/format | |
FIXME(inherent_associated_types): update `resolution` based on `ty` here | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME(inherent_associated_types, #106719): Support self types other than ADTs | rustc_hir_analysis/src/hir_ty_lowering/mod | Open |
FIXME(inline_const_pat): once stabilized, remove this check and remove the `(requires #[feature(inline_const_pat)])` note from the message | rustc_parse/src/parser/pat | |
FIXME(issue#3281): We must follow UAX#14 algorithm instead of this | tools/rustfmt/src/string | Closed |
FIXME(jackh726): This is a hack. It's somewhat like | rustc_borrowck/src/type_check/input_output | |
FIXME(jackh726): we can also warn in the more general case | rustc_hir_analysis/src/check/wfcheck | |
FIXME(jieyouxu) Ideally these checks would be integrated into compiletest's | tools/tidy/src/unknown_revision | |
FIXME(jieyouxu): I feel like there's a better way to do this, leaving for later | tools/compiletest/src/header | |
FIXME(jieyouxu): check cross-compile setup | run-make/comment-section/rmake | |
FIXME(jieyouxu): convert these to return `PathBuf`s instead of strings! | tools/run-make-support/src/artifact_names | |
FIXME(jieyouxu): fix this ugly fragile test when `BacktraceFrame` has accessors like | ui/backtrace/line-tables-only | |
FIXME(jieyouxu): for some forsaken reason on i686-msvc `foo` doesn't have an entry in the | ui/backtrace/line-tables-only | |
FIXME(jieyouxu): improve error handling | tools/compiletest/src/header | |
FIXME(jieyouxu): improve the communication between bootstrap and compiletest here so | tools/compiletest/src/runtest/run_make | |
FIXME(jieyouxu): make this test use proper accessors on `BacktraceFrames` once it has | ui/backtrace/dylib-dep | |
FIXME(jieyouxu): please rename `TARGET_RPATH_ENV`, `HOST_RPATH_DIR` and | tools/compiletest/src/runtest/run_make | |
FIXME(jieyouxu): remove this check once all run-make tests are ported over to rmake.rs | tools/tidy/src/main | |
FIXME(jieyouxu): there almost certainly is a better way to do this (specifically how the | tools/compiletest/src/runtest/run_make | |
FIXME(jieyouxu): there has to be a better way to do this, without the needs-llvm-components it | run-make/print-target-list/rmake run-make/print-to-output/rmake | |
FIXME(jieyouxu): this check is currently order-dependent, but we should probably | tools/compiletest/src/header | |
FIXME(jieyouxu): this flag is load-bearing for rustc to not ICE on broken pipes, because | bootstrap/src/core/build_steps/compile | |
FIXME(jieyouxu): this test is NOT run-rustfix because this test contains conflicting | ui/typeck/issue-112007-leaked-writeln-macro-internals | |
FIXME(jieyouxu): this test is currently NOT run-rustfix because there are conflicting | ui/typeck/question-mark-operator-suggestion-span | |
FIXME(jieyouxu): this will cause `//@` directives in the rest of the test file to | tools/compiletest/src/header | |
FIXME(jieyouxu): tighten up this parsing to reject using both `:` and ` ` as means to | tools/compiletest/src/header/needs | |
FIXME(jieyouxu): triple check if this works in CI | debuginfo/unit-type | |
FIXME(jieyouxu): triple check in CI if the directive actually works | debuginfo/range-types | |
FIXME(jieyouxu): untangle these paths, we should provide both a path to root `tests/` or | tools/compiletest/src/lib | |
FIXME(jieyouxu): use proper `BacktraceFrame` accessors when it becomes available. Right now | ui/backtrace/dylib-dep | |
FIXME(jieyouxu): we should report a fatal error or warning if user wrote `-Cpanic=` with | tools/compiletest/src/runtest | |
FIXME(jistone): the following was originally the fallback SSA implementation, before LLVM 13 | rustc_codegen_gcc/src/builder | |
FIXME(joboet): implement support for native TLS instead | std/src/sys/thread_local/key/xous | |
FIXME(jordanrh): use PanicStrategy::Unwind when SEH is | rustc_target/src/spec/targets/thumbv7a_pc_windows_msvc rustc_target/src/spec/targets/thumbv7a_uwp_windows_msvc | |
FIXME(jseyfried) | rustc_span/src/lib | |
FIXME(jseyfried) improve `Self` hygiene | rustc_resolve/src/ident | |
FIXME(jseyfried): positional field hygiene | rustc_ast_lowering/src/item | |
FIXME(jswrenn): This const op is not actually usable. Why? | core/src/mem/transmutability core/src/mem/transmutability | |
FIXME(jynelson): this is way too many arguments | rustdoc/passes/collect_intra_doc_links | |
FIXME(jynelson): this might conflict with my `Self` fix in #76467 | rustdoc/passes/collect_intra_doc_links | Closed |
FIXME(kobzol): remove this flag once MCP510 gets stabilized | bootstrap/src/utils/helpers bootstrap/src/utils/helpers | |
FIXME(kobzol): try gather profiles together, at once for LLVM and rustc | tools/opt-dist/src/main | |
FIXME(kobzol): try to re-enable this once BOLT in-place rewriting is merged or after | tools/opt-dist/src/bolt | |
FIXME(lazy_normalization): Lazy normalization should save us from | rustc_trait_selection/src/traits/project | |
FIXME(lazy_type_alias): Once the feature is complete or stable, rewrite this | rustdoc/html/render/write_shared | |
FIXME(libc): adding real STATUS, ERROR type eventually | std/src/sys/pal/unix/thread | |
FIXME(llvm19): LLVM misoptimizes `powi.f16` | std/src/f16/tests | |
FIXME(lqd): Unify and de-duplicate the following with the actual | rustc_borrowck/src/diagnostics/bound_region_errors | |
FIXME(madsmtm): Certain other targets also include a version | rustc_codegen_ssa/src/back/mod | |
FIXME(madsmtm): Incremental cache is not yet busted | run-make/apple-deployment-target/rmake | |
FIXME(madsmtm): Parse the SDK version from the SDK root instead | rustc_codegen_ssa/src/back/link | |
FIXME(madsmtm): This uses the current deployment target | run-make/apple-sdk-version/rmake | |
FIXME(madsmtm): Use `sess.target.llvm_target` once target-lexicon supports unversioned macOS | rustc_codegen_cranelift/src/lib | |
FIXME(madsmtm): Xcode's version of Clang seems to require a minimum | run-make/apple-deployment-target/rmake | |
FIXME(matthewj, petrochenkov) Use this more often, add a similar | rustc_span/src/symbol | |
FIXME(matthewjasper) Don't store in this in `Body` | rustc_middle/src/mir/mod rustc_middle/src/mir/mod rustc_middle/src/mir/mod | |
FIXME(matthewjasper) This allows copying a type that doesn't implement | core/src/marker | |
FIXME(maurer) only reify it if it is a vtable-safe function | rustc_middle/src/ty/instance | |
FIXME(mejrs) unfortunately `#[derive(LintDiagnostic)]` | rustc_pattern_analysis/src/errors rustc_pattern_analysis/src/errors | |
FIXME(michaelwoerister): do commented out ones | rustc_incremental/src/persist/dirty_clean | |
FIXME(michaelwoerister):Interesting. I would have thought that that changes the MIR. And it | incremental/hashes/enum_constructors | |
FIXME(mikeyhew) get rid of this `if` statement once `receiver_is_dispatchable` allows | rustc_trait_selection/src/traits/dyn_compatibility | |
FIXME(mikeyhew) this is a total hack. Once dyn_compatible_for_dispatch is stabilized, we can | rustc_trait_selection/src/traits/dyn_compatibility | |
FIXME(mikeyhew) when unsized receivers are implemented as part of unsized rvalues, add this | rustc_trait_selection/src/traits/dyn_compatibility | |
FIXME(min_const_generic_exprs): We could perhaps defer this check so that | rustc_hir_typeck/src/expr | |
FIXME(min_const_generic_exprs): We could process obligations here if `ct` is a var | rustc_hir_typeck/src/fn_ctxt/_impl | |
FIXME(min_generic_const_args): implement support for this, behind the feature gate | ui/feature-gates/feature-gate-min-generic-const-args | |
FIXME(min_generic_const_args): this branch is dead once new const path lowering | rustc_hir_analysis/src/hir_ty_lowering/generics | |
FIXME(min_generic_const_args): update for `fn foo() -> Bar<FOO<impl Trait>>` support | rustc_ast_lowering/src/lib rustc_ast_lowering/src/lib | |
FIXME(min_generic_const_args): we only allow one-segment const paths for now | rustc_ast_lowering/src/lib rustc_ast_lowering/src/lib | |
FIXME(min_generic_const_exprs): We should shallowly normalize this | rustc_trait_selection/src/traits/select/confirmation | |
FIXME(min_specialization), FIXME(const_generics) | rustc_hir_analysis/src/impl_wf_check/min_specialization | |
FIXME(mir-drop): use the vec![..] macro | ui/mir/mir_augmented_assignments | |
FIXME(misdreavus): if a doc comment is placed on an extern crate statement, it will be | rustdoc/doctest/make | |
FIXME(misdreavus): pass `-Z treat-err-as-bug` to the doctest parser | rustdoc/doctest/make | |
FIXME(mu001999) E0599 maybe not suitable here because it is for types | rustc_hir_typeck/src/method/suggest | |
FIXME(must_not_suspend): This is wrong. We should handle printing unevaluated consts | rustc_mir_transform/src/coroutine | |
FIXME(mw): Anything that is produced via DepGraph::with_task() must implement | rustc_codegen_ssa/src/common | |
FIXME(mw): Cache this via a regular UniqueTypeId instead of an extra field in the debug context | rustc_codegen_llvm/src/debuginfo/metadata | |
FIXME(nagisa): figure out how to not allocate a full hashset here | rustc_codegen_gcc/src/gcc_util rustc_codegen_llvm/src/llvm_util | |
FIXME(nagisa): investigate whether it can be changed into define_global | rustc_codegen_gcc/src/consts rustc_codegen_llvm/src/consts | |
FIXME(nagisa): it isn't clear what's the best interaction between features implied by | rustc_codegen_gcc/src/gcc_util rustc_codegen_llvm/src/llvm_util | |
FIXME(nagisa): remove the flags below once all targets support `asm!` | codegen/asm/sanitize-llvm | |
FIXME(nbdd0121): This is broken in MinGW, see rust-lang/rust/pull/95604#issuecomment-1101564032 | run-make/symbol-visibility/rmake run-make/symbol-visibility/rmake | |
FIXME(nbdd0121): `#[used]` are marked as reachable here so it's picked up by | rustc_passes/src/reachable | |
FIXME(negative_bounds): Handle this correctly | rustc_hir_analysis/src/hir_ty_lowering/dyn_compatibility | |
FIXME(never_patterns): Also assert validity of the data at `place` | rustc_mir_build/src/builder/matches/test | |
FIXME(never_patterns): does this do what I expect? | rustc_hir_typeck/src/expr_use_visitor | |
FIXME(never_patterns): does this make sense? | rustdoc/clean/utils | |
FIXME(nikomatsakis) -- this cache is not taking into | rustc_trait_selection/src/traits/select/mod | |
FIXME(nll-rfc#40): do more precise destructor tracking here. For now | rustc_borrowck/src/lib | |
FIXME(nnethercote) All the output is currently wrong | rustc_parse/src/parser/tests | |
FIXME(nnethercote) The `NtExpr` case should only match if | rustc_parse/src/parser/expr | |
FIXME(nnethercote): you might expect `ast::TyKind::Dummy` to be used here, but some | rustc_expand/src/base | |
FIXME(non-lifetime-binders): What to do here? | rustc_symbol_mangling/src/v0 | |
FIXME(non_lifetime_binders): Const bound params are pretty broken | rustc_ast_passes/src/feature_gate | |
FIXME(non_lifetime_binders): Placeholders don't currently | rustc_trait_selection/src/traits/query/type_op/implied_outlives_bounds | |
FIXME(non_lifetime_binders): Stop special-casing | rustc_resolve/src/late | |
FIXME(non_lifetime_binders): Support higher-ranked const parameters | rustdoc/clean/mod | |
FIXME(non_lifetime_binders): What to do here? | rustc_infer/src/infer/outlives/test_type_match | |
FIXME(nonpoison_mutex,nonpoison_condvar): switch to nonpoison versions once they are available | std/src/sync/barrier | |
FIXME(nonpoison_once): if possible, switch to nonpoison version once it is available | std/src/sync/lazy_lock | |
FIXME(nonpoison_once): switch to nonpoison version once it is available | std/src/sync/once_lock | |
FIXME(notriddle): rust-lang/rust/issues/97129 | rustdoc/passes/collect_trait_impls | |
FIXME(oli-obk): also pretty print arrays and other aggregate constants by reading | rustc_middle/src/mir/pretty rustc_middle/src/ty/print/pretty | |
FIXME(oli-obk): at least print tuples and slices nicely | rustc_const_eval/src/interpret/operand | |
FIXME(oli-obk): can we use this to simplify slice/array pattern hacks? | rustc_mir_build/src/builder/matches/match_pair | |
FIXME(oli-obk): collect multiple spans for better diagnostics down the road | rustc_borrowck/src/region_infer/opaque_types | |
FIXME(oli-obk): deduplicate and harden these checks | rustc_abi/src/layout rustc_abi/src/layout | |
FIXME(oli-obk): it is suspicious that we are dropping the constness and | rustc_trait_selection/src/traits/select/candidate_assembly | |
FIXME(oli-obk): make `expected_inputs_for_expected_output` support this | ui/impl-trait/hidden-type-is-opaque-2 | |
FIXME(oli-obk): replace the magic const generic argument of `simd_shuffle` with a | rustc_codegen_ssa/src/mir/constant | |
FIXME(oli-obk): these currently cause cycle errors | ui/type-alias-impl-trait/not_a_defining_use | |
FIXME(oli-obk): this should instead panic (not hard-abort) at runtime | ui/consts/const-eval/promoted_const_fn_fail_deny_const_err | |
FIXME(oli-obk): we can probably encode closures just like structs | rustc_const_eval/src/const_eval/valtrees | |
FIXME(oli-obk): we could look behind opaque types | rustc_const_eval/src/const_eval/valtrees | |
FIXME(oli-obk): we should be able to just walk the `inlined_parent_scope`, but it | rustc_middle/src/mir/mod | |
FIXME(onur-ozkan): extend scope of the test | bootstrap/src/core/config/tests | |
FIXME(or_patterns; matthewjasper) Don't give up if we have a guard | rustc_mir_build/src/builder/matches/mod | |
FIXME(or_patterns; matthewjasper) Try to be more aggressive here | rustc_mir_build/src/builder/matches/mod | |
FIXME(parallel_compiler): Get rid of these aliases across the compiler | rustc_data_structures/src/sync | |
FIXME(pattern_types): Figure out the exact coherence rules we want here | rustc_hir_analysis/src/coherence/inherent_impls | |
FIXME(pattern_types): make equal patterns equal (`0..=` is the same as `..=`) | rustc_middle/src/ty/relate | |
FIXME(pattern_types): report a better error | rustc_middle/src/ty/relate | |
FIXME(pattern_types): take pattern into account | rustc_type_ir/src/fast_reject | |
FIXME(pietroalbini): this test currently does not work on cross-compiled targets | tools/compiletest/src/header | |
FIXME(pnkfelix): this currently derives `PartialOrd` and `Ord` to | rustc_middle/src/middle/region | |
FIXME(precise_captures): Suggest adding to `use<...>` list instead | rustc_trait_selection/src/error_reporting/infer/nice_region_error/static_impl_trait | |
FIXME(precise_capturing): Add rustfix here after dealing w/ elided lifetimes | ui/lifetimes/issue-105227 | |
FIXME(precise_capturing): If we were to allow `use` in other positions | rustc_ast_passes/src/ast_validation | |
FIXME(precise_capturing): Structured suggestion for this would be useful | rustc_hir_analysis/src/check/check rustc_hir_analysis/src/check/check rustc_hir_analysis/src/check/check | |
FIXME(project-rfc-2229#48): This should be a list of capture names/places | rustc_middle/src/mir/pretty rustc_middle/src/mir/pretty | Closed |
FIXME(project-rfc-2229#8): Use place span for diagnostics | rustc_borrowck/src/diagnostics/var_name | Closed |
FIXME(project-rfc_2229#36): print capture precisely here | rustc_borrowck/src/diagnostics/mod | |
FIXME(ptr_metadata): This impl overlaps with the other impls and shouldn't | rustc_next_trait_solver/src/solve/normalizes_to/mod rustc_trait_selection/src/traits/project | |
FIXME(quote) | ui/proc-macro/quote/auxiliary/basic | |
FIXME(quote): `proc_macro::quote!` doesn't support repetition at the moment, so the stderr is | ui/proc-macro/quote/does-not-have-iter-interpolated-dup ui/proc-macro/quote/does-not-have-iter-interpolated ui/proc-macro/quote/does-not-have-iter-separated ui/proc-macro/quote/does-not-have-iter ui/proc-macro/quote/not-repeatable | |
FIXME(rcvalle): Enforce autotraits ordering when encoding (e.g., alphabetical order) | codegen/sanitizer/cfi/emit-type-metadata-id-itanium-cxx-abi-trait-types | |
FIXME(rcvalle): This allows a drop call on any trait object to call the drop function of | rustc_sanitizers/src/cfi/typeid/itanium_cxx_abi/transform | |
FIXME(repr_simd): This check is nice, but perhaps unnecessary due to the fact | rustc_hir_analysis/src/check/check | |
FIXME(repr_simd): rust-lang/rust/pull/78863#discussion_r522784112 | rustc_middle/src/ty/sty | |
FIXME(return_type_notation): Could also recover `...` here | rustc_parse/src/parser/path | |
FIXME(return_type_notation): Fix RTN parens rendering | rustdoc/clean/mod | |
FIXME(return_type_notation): Is this correct? I think so | rustc_ast_lowering/src/path | |
FIXME(return_type_notation): Provide some structured suggestion here | rustc_hir_analysis/src/hir_ty_lowering/bounds | |
FIXME(return_type_notation): This check should be more robust | rustc_hir_analysis/src/collect/predicates_of | |
FIXME(return_type_notation): We only support lifetime params for now | rustc_middle/src/ty/print/pretty | |
FIXME(return_type_notation): track binders in this normalizer, as | rustc_trait_selection/src/traits/mod | |
FIXME(return_type_notation): we could issue a feature error | rustc_ast_lowering/src/lib | |
FIXME(richkadel): If/when migrating the MIR graphviz to this generic implementation | rustc_middle/src/mir/generic_graphviz rustc_middle/src/mir/generic_graphviz | |
FIXME(rust-lang/cargo#5754) we shouldn't be using special command arguments | bootstrap/src/core/builder/cargo | Closed |
FIXME(rust-lang/lang): I think this behavior is logical if we want to allow | ui/associated-type-bounds/assoc-type-eq-with-dyn-atb-fail | |
FIXME(rust-lang/rust#100717) - cranelift codegen backend is not yet translated | rustc_codegen_cranelift/src/lib | Open |
FIXME(rust-lang/rust#85105): Casts like `IMM8 as u32` result in the const being stored | rustc_codegen_cranelift/src/constant | Open |
FIXME(rust/#120456) - is `swap_remove` correct? | tools/clippy/clippy_lints/src/copies tools/clippy/clippy_lints/src/escape tools/clippy/clippy_lints/src/escape tools/clippy/clippy_lints/src/index_refutable_slice tools/clippy/clippy_lints/src/index_refutable_slice tools/clippy/clippy_lints/src/matches/match_same_arms tools/clippy/clippy_lints/src/needless_pass_by_ref_mut tools/clippy/clippy_lints/src/only_used_in_recursion | Open |
FIXME(rylev): we hardcode the dep graph file name so we | rustc_query_system/src/dep_graph/serialized | |
FIXME(rylev, wesleywiser): uncommenting this item breaks the test, and we're not sure why | debuginfo/no_mangle-info | |
FIXME(smir-rename): change this to PointerCoercion(DynStar) | stable_mir/src/mir/body | |
FIXME(smir-rename): rename this to PointerExposeProvenance | stable_mir/src/mir/body | |
FIXME(stable_mir): Movability here is redundant | stable_mir/src/mir/body stable_mir/src/ty | |
FIXME(static_mut_refs): Do not allow `static_mut_refs` lint | alloc/src/collections/linked_list/tests alloc/src/collections/vec_deque/tests alloc/tests/fmt alloc/tests/vec alloc/tests/vec alloc/tests/vec_deque core/tests/atomic std/src/sys/alloc/wasm std/src/sys/alloc/xous std/src/thread/local/tests tools/clippy/tests/ui/redundant_static_lifetimes tools/clippy/tests/ui/useless_conversion tools/miri/tests/pass/atomic tools/miri/tests/pass/static_memory_modification tools/miri/tests/pass/static_mut tools/miri/tests/pass/tls/tls_static tools/miri/tests/pass-dep/concurrency/linux-futex tools/miri/tests/pass-dep/concurrency/tls_pthread_drop_order tools/miri/tests/pass-dep/libc/libc-eventfd tools/miri/tests/pass-dep/libc/libc-pipe tools/miri/tests/pass-dep/libc/libc-socketpair ui/abi/statics/static-mut-foreign ui/async-await/issues/issue-67611-static-mut-refs ui/binding/order-drop-with-match ui/consts/static-mut-refs ui/coroutine/static-mut-reference-across-yield ui/drop/issue-23338-ensure-param-drop-order ui/drop/issue-23611-enum-swap-in-drop ui/drop/issue-48962 ui/drop/static-issue-17302 ui/functional-struct-update/functional-struct-update-respects-privacy ui/issues/issue-16151 ui/issues/issue-4734 ui/issues/issue-6892 ui/link-section ui/linkage-attr/linkage-attr-mutable-static ui/methods/method-self-arg-trait ui/methods/method-self-arg ui/nll/issue-69114-static-mut-ty ui/numbers-arithmetic/shift-near-oflo ui/thread-local/thread-local-issue-37508 | |
FIXME(static_mut_refs): this could use an atomic | ui/array-slice-vec/slice-panic-1 ui/array-slice-vec/slice-panic-2 ui/array-slice-vec/slice ui/drop/drop-struct-as-object ui/drop/repeat-drop ui/for-loop-while/cleanup-rvalue-during-if-and-while ui/issues/issue-10734 ui/issues/issue-15858 ui/issues/issue-8860 ui/lto/lto-still-runs-thread-dtors ui/mir/mir_early_return_scope ui/self/where-for-self ui/traits/impl ui/union/union-drop-assign ui/union/union-drop | |
FIXME(stmt_expr_attributes) | tools/rust-analyzer/crates/hir-expand/src/lib | |
FIXME(strict provenance) | std/src/sys/personality/dwarf/eh | |
FIXME(strict_provenance_magic): I am magic and should be a compiler intrinsic | portable-simd/crates/core_simd/src/simd/ptr/const_ptr portable-simd/crates/core_simd/src/simd/ptr/const_ptr portable-simd/crates/core_simd/src/simd/ptr/mut_ptr portable-simd/crates/core_simd/src/simd/ptr/mut_ptr | |
FIXME(strict_provenance_magic): we defined RawSocket to be a u64 ;-; | std/src/os/windows/io/socket | |
FIXME(swatinem): the following lang items are used for async lowering and | rustc_hir/src/lang_items tools/rust-analyzer/crates/hir-def/src/lang_item | |
FIXME(sync_nonpoison) add links to sync::nonpoison to the doc comment above | std/src/sync/poison | |
FIXME(sync_nonpoison): `WaitTimeoutResult` is actually poisoning-agnostic, it seems | std/src/sync/poison/condvar | |
FIXME(sync_nonpoison): implement nonpoison versions | std/src/sync/mod | |
FIXME(sync_nonpoison,sync_poison_mod): remove all `#[doc(inline)]` once the modules are stabilized | std/src/sync/mod | |
FIXME(tempdragon): Add the scope related code here if the scope is supported | rustc_codegen_gcc/src/debuginfo | |
FIXME(tempdragon): Currently, this function is not yet implemented. It seems that the | rustc_codegen_gcc/src/debuginfo | |
FIXME(tempdragon): Not sure if this is correct, probably wrong but still keep it here | rustc_codegen_gcc/src/debuginfo | |
FIXME(tempdragon): Re-enable `clippy::suspicious_else_formatting` if the following issue is solved | rustc_codegen_gcc/src/intrinsic/mod | |
FIXME(tempdragon/?): Add Scope Support Here | rustc_codegen_gcc/src/debuginfo | |
FIXME(tmandry): Consider using sparse bitsets here once we have good | rustc_mir_transform/src/coroutine | |
FIXME(trait-system-refactor-initiative#117): we don't detect whether a response | rustc_next_trait_solver/src/solve/mod | Closed |
FIXME(trait_alias): Implement trait alias | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME(trait_alias): Suggest adding `Self: Trait` to | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME(trait_alias): Trait alias brings aliased traits in scope! Note that supertraits of | tools/rust-analyzer/crates/hir-def/src/resolver | |
FIXME(trait_alias): We need to handle trait alias here | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME(translation) there might be pieces that are translatable | rustc_const_eval/src/interpret/memory | |
FIXME(transmutability): This really should be returning nested goals for `Answer::If*` | rustc_trait_selection/src/solve/delegate | |
FIXME(tschottdorf): #44912 | ui/rfcs/rfc-2005-default-binding-mode/general | Open |
FIXME(tschottdorf): This should compile. See #44912 | ui/rfcs/rfc-2005-default-binding-mode/issue-44912-or | Open |
FIXME(tschottdorf): `contains_explicit_ref_binding()` must be removed | rustc_hir_typeck/src/fn_ctxt/checks | |
FIXME(tschottdorf): don't call contains_explicit_ref_binding, which | rustc_hir_typeck/src/_match | |
FIXME(tschottdorf): this is problematic as the HIR is being scraped, but | rustc_hir/src/pat_util | |
FIXME(tschottdorf): this test should pass | ui/rfcs/rfc-2005-default-binding-mode/const | |
FIXME(tschottdorf): we want these to compile, but they don't | ui/rfcs/rfc-2005-default-binding-mode/lit | |
FIXME(twk): this is obviously not nice to duplicate like that | rustc_trait_selection/src/traits/auto_trait | |
FIXME(type-alias-impl-trait): We could probably make this work | ui/type-alias-impl-trait/nested-tait-inference | |
FIXME(type_alias_impl_trait): These opaque types | rustc_trait_selection/src/error_reporting/infer/need_type_info | |
FIXME(type_alias_impl_trait): What does this test? This needs a comment | ui/type-alias-impl-trait/coherence_generalization | |
FIXME(type_alias_impl_trait): inform the user about why `F` is not available here | ui/impl-trait/issues/issue-78722-2 | |
FIXME(typed_def_id): Further propagate ModDefId | rustc_middle/src/ty/print/pretty rustc_middle/src/ty/print/pretty | |
FIXME(typed_def_id): Introduce checked constructors that check def_kind | rustc_privacy/src/lib | |
FIXME(typed_def_id): Make `Visibility::Restricted` use a `LocalModDefId` by default | rustc_privacy/src/lib | |
FIXME(typed_def_id): Replace this with `as_mod_def_id` | rustc_span/src/def_id | |
FIXME(typing_env): This should be able to reveal the opaques local to the | rustc_mir_transform/src/lint_tail_expr_drop_order | |
FIXME(unsafe_binder) | rustc_symbol_mangling/src/v0 | |
FIXME(unsafe_binder): Better span | rustc_resolve/src/late | |
FIXME(unsafe_binder): Figure out how to handle pointee for unsafe binders | rustc_next_trait_solver/src/solve/normalizes_to/mod | |
FIXME(unsafe_binder): Implement rustdoc-json | rustdoc/json/conversions | |
FIXME(unsafe_binder): Should we conditionally | rustc_trait_selection/src/traits/select/mod | |
FIXME(unsafe_binder): print this like `unsafe<'a> T<'a>` | rustc_type_ir/src/ty_kind | |
FIXME(unsafe_binders) | rustc_middle/src/ty/util rustc_smir/src/rustc_smir/convert/ty | |
FIXME(unsafe_binders): Implement this | rustc_sanitizers/src/cfi/typeid/itanium_cxx_abi/encode | |
FIXME(unsafe_binders): Instantiate the binder with placeholders I guess | rustc_next_trait_solver/src/solve/normalizes_to/mod | |
FIXME(unsafe_binders): Make this print `unsafe<>` rather than `for<>` | rustc_middle/src/ty/print/pretty | |
FIXME(unsafe_binders): Non-local? | rustc_next_trait_solver/src/coherence | |
FIXME(unsafe_binders): Squash the double binder for now, I guess | rustc_trait_selection/src/traits/select/mod | |
FIXME(unsafe_binders): This binder needs to be squashed | rustc_trait_selection/src/traits/select/mod | |
FIXME(unsafe_binders): This is covariant, right? | rustc_hir_analysis/src/variance/constraints | |
FIXME(unsafe_binders): This should report ambiguity once we've removed | ui/unsafe-binders/mismatch ui/unsafe-binders/mismatch | |
FIXME(unsafe_binders): Unsafe binders could implement `~const Drop` | rustc_next_trait_solver/src/solve/assembly/structural_traits rustc_trait_selection/src/traits/effects | |
FIXME(unsafe_binders): We should also recurse into the binder here | rustc_trait_selection/src/traits/wf | |
FIXME(unsafe_binders): coerce here if needed? | rustc_hir_typeck/src/expr | |
FIXME(unsafe_binders): instantiate this with placeholders?? i guess?? | rustc_next_trait_solver/src/solve/normalizes_to/mod | |
FIXME(unsized_const_params): Make `const N: [u8]` work then forbid references | rustc_trait_selection/src/traits/misc | |
FIXME(valtrees): Correctly print mir constants | rustc_middle/src/mir/consts | |
FIXME(valtrees): Remove the special case for `str` | rustc_symbol_mangling/src/v0 | |
FIXME(vincenzopalazzo): make the check smarter | rustc_resolve/src/late/diagnostics | |
FIXME(vincenzopalazzo): move the HirId to a LocalDefId | rustc_middle/src/ty/mod | |
FIXME(welseywiser) const prop doesn't work on coroutines because of query cycles | rustc_mir_transform/src/known_panics_lint | |
FIXME(wesleywiser) This logic could be extended further to arbitrary structs or | rustc_const_eval/src/interpret/validity | |
FIXME(wesleywiser): Ideally, we could const-prop away all of this and just be left with | mir-opt/const_prop/discriminant | |
FIXME(wg-debugging): implement CPP like printing for patterns | rustc_codegen_ssa/src/debuginfo/type_names | |
FIXME(with_negative_coherence): the infcx has constraints from equating | rustc_trait_selection/src/traits/coherence | |
FIXME(workingjubilee): add proper diagnostics when we factor out "pre-run" setup | rustc_interface/src/util | |
FIXME(yaahc): once metrics can be enabled by default we will want "failure to emit | rustc_driver_impl/src/lib | |
FIXME(yukang) Test remove NestedFullUnused | ui/imports/suggest-remove-issue-121315 | |
FIXME(yukang): Test remove both redundant and unused | ui/imports/suggest-remove-issue-121315 | |
FIXME(zetanumbers): Add same restrictions on AsyncDrop impls as | core/src/future/async_drop | |
FIXME(zetanumbers): Disallow types with `AsyncDrop` in unions | tools/miri/tests/pass/async-drop ui/async-await/async-drop | |
FIXME(zetanumbers): Note that this method is used to check eligible types | rustc_middle/src/ty/util | |
FIXME(zetanumbers): Send and Sync impls | core/src/future/async_drop | |
FIXME(zetanumbers): Temporary workaround for async drop of dynamic types | rustc_middle/src/ty/util | |
FIXME(zetanumbers): This check fully depends on the layout of | ui/async-await/async-drop | |
FIXME(zetanumbers): consider AsyncDestruct::async_drop cleanup tests | tools/miri/tests/pass/async-drop ui/async-await/async-drop | |
FIXME(zetanumbers): consider replacing this with only | rustc_middle/src/ty/util | |
FIXME**: Document exactly which `CastKind`s allow which types of casts | rustc_middle/src/mir/syntax | |
FIXME**: Document exactly which `CastKind`s allow which types of casts. Figure out why | tools/rust-analyzer/crates/hir-ty/src/mir | |
FIXME, quote is incompatible with third-party tools | tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span | |
FIXME, this resolution should not be done syntactically | tools/rust-analyzer/crates/hir-expand/src/db | |
FIXME, type mismatch should not occur | tools/rust-analyzer/crates/hir-ty/src/tests/method_resolution | |
FIXME-CHECK-DAG: %[[CMP0:.+]] = icmp sge i16 %[[A0]], %[[B0]] | codegen/comparison-operators-2-tuple | |
FIXME-CHECK-DAG: %[[CMP0:.+]] = icmp sgt i16 %[[A0]], %[[B0]] | codegen/comparison-operators-2-tuple | |
FIXME-CHECK-DAG: %[[CMP0:.+]] = icmp sle i16 %[[A0]], %[[B0]] | codegen/comparison-operators-2-tuple | |
FIXME-CHECK-DAG: %[[CMP1:.+]] = icmp uge i16 %[[A1]], %[[B1]] | codegen/comparison-operators-2-tuple | |
FIXME-CHECK-DAG: %[[CMP1:.+]] = icmp ugt i16 %[[A1]], %[[B1]] | codegen/comparison-operators-2-tuple | |
FIXME-CHECK-DAG: %[[CMP1:.+]] = icmp ule i16 %[[A1]], %[[B1]] | codegen/comparison-operators-2-tuple | |
FIXME-CHECK-DAG: %[[EQ:.+]] = icmp eq i16 %[[A0]], %[[B0]] | codegen/comparison-operators-2-tuple codegen/comparison-operators-2-tuple codegen/comparison-operators-2-tuple | |
FIXME-CHECK-LABEL: @bool_eq | codegen/option-niche-eq | |
FIXME-CHECK-NEXT: icmp eq i8 | codegen/option-niche-eq | |
FIXME-CHECK-NEXT: ret i1 | codegen/option-niche-eq | |
FIXME-CHECK: %[[R:.+]] = select i1 %[[EQ]], i1 %[[CMP1]], i1 %[[CMP0]] | codegen/comparison-operators-2-tuple codegen/comparison-operators-2-tuple codegen/comparison-operators-2-tuple | |
FIXME-CHECK: _0 = const -1_i8; | mir-opt/dataflow-const-prop/transmute | |
FIXME-CHECK: ret i1 %[[R]] | codegen/comparison-operators-2-tuple codegen/comparison-operators-2-tuple codegen/comparison-operators-2-tuple | |
FIXME-CHECK: start | codegen/option-niche-eq | |
FIXME. Except we don't! | ui/regions/forall-wf-ref-reflexive | |
FIXME. This ought to be accepted, presumably | ui/regions/forall-wf-ref-reflexive | |
FIXME. This struct gets converted to a `ResolveBoundVars` for | rustc_hir_analysis/src/collect/resolve_bound_vars | |
FIXME. Unfortunately, this doesn't quite work right now because | rustc_hir_analysis/src/check/compare_impl_item | |
FIXME. We currently fail to recognize this as the self type, which | ui/self/elision/ref-alias-async ui/self/elision/ref-alias | |
FIXME. We should handle this case better. It | rustc_borrowck/src/diagnostics/region_errors | |
FIXME. We should really... do something with these region | rustc_trait_selection/src/traits/mod | |
FIXME/HACK: Go back to `GenericArgsRef` to use its inherent methods | rustc_trait_selection/src/error_reporting/infer/mod | |
FIXME: We should raise a deadlock error if the self_ref upgrade failed | tools/miri/src/shims/unix/unnamed_socket tools/miri/src/shims/unix/unnamed_socket | |
FIXME: #114050 | rustc_hir_typeck/src/errors | Open |
FIXME: #4825; This is required, because Clippy lints that are based on MIR have to be | tools/clippy/src/driver | Closed |
FIXME: #67062 has details about why this is sub-optimal | rustc_expand/src/mbe | Open |
FIXME: #7698, false positive of the internal lints | tools/clippy/clippy_lints/src/uninit_vec | Closed |
FIXME: #94122 this extern crate definition only exist here to stop | std/src/lib | Closed |
FIXME: #[cfg_eval] is not implemented. But it is not stable yet | tools/rust-analyzer/crates/hir-expand/src/cfg_process | |
FIXME: #[cold] was previously allowed on non-functions and some crates used | rustc_passes/src/check_attr | |
FIXME: #[cold] was previously allowed on non-functions/statics and some crates | rustc_passes/src/check_attr | |
FIXME: #[link_section] was previously allowed on non-functions/statics and some | rustc_passes/src/check_attr | |
FIXME: #[no_mangle] was previously allowed on non-functions/statics and some | rustc_passes/src/check_attr | |
FIXME: #[no_mangle] was previously allowed on non-functions/statics, this should be an error | rustc_passes/src/check_attr | |
FIXME: #[target_feature] was previously erroneously allowed on statements and some | rustc_passes/src/check_attr | |
FIXME: %g1 is volatile in ABI, but used internally by LLVM | rustc_target/src/asm/sparc | |
FIXME: &affected_workspace | tools/rust-analyzer/crates/rust-analyzer/src/flycheck | |
FIXME: (async) gen closures aren't yet parsed | rustc_parse/src/parser/expr | |
FIXME: +pc was only recently added to LLVM | run-make/pointer-auth-link-with-c/rmake | |
FIXME: +soft-float itself doesn't set -vector | ui/simd-abi-checks-s390x | |
FIXME: ...which hopefully allows us to simplify this | rustdoc/clean/auto_trait | |
FIXME: ...which obviously won't have any generics | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME: 16 is made up and arbitrary. We should look at some | rustc_next_trait_solver/src/canonicalizer | |
FIXME: 2 * hole.pos() + 1 or 2 * hole.pos() + 2 could overflow | alloc/src/collections/binary_heap/mod alloc/src/collections/binary_heap/mod | |
FIXME: 4 is probably unnecessary and duplicative | tools/rustfmt/src/config/config_type | |
FIXME: 91167 | run-make/raw-dylib-alt-calling-convention/lib | Open |
FIXME: <Gankra/thin-vec/pull/66> is merged, this can be removed | rustc_trait_selection/src/solve/fulfill | |
FIXME: @nikomatsakis suggested that this flag could be removed with the following modifications | rustc_borrowck/src/lib | |
FIXME: A `HirDatabase` query may be handy if this process is needed in more | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME: A not fully instantiated drop shim can cause ICEs if one attempts to | rustc_mir_transform/src/inline/cycle | |
FIXME: A recursion limit is necessary as well, for irregular | rustc_lint/src/types | |
FIXME: AIX's strip utility only offers option to strip line number information | rustc_codegen_ssa/src/back/link | |
FIXME: Accepting floats here to reject them in validation later | tools/rust-analyzer/crates/syntax/src/ast/node_ext | |
FIXME: Account for `#[no_implicit_prelude]` attributes | rustc_resolve/src/build_reduced_graph | |
FIXME: Account for self-contained linking settings and Apple SDK | rustc_metadata/src/native_libs | |
FIXME: Actually make use of `features` | rustdoc/clean/cfg | |
FIXME: Actually use a proper binder here instead of relying on `ReErased` | rustc_next_trait_solver/src/solve/normalizes_to/opaque_types | |
FIXME: Add Checks for these | rustc_mir_transform/src/validate | |
FIXME: Add Snippet Support | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/unresolved_field | |
FIXME: Add an assertion that opaque type storage is empty | rustc_next_trait_solver/src/solve/normalizes_to/opaque_types | |
FIXME: Add bless option | tools/compiletest/src/runtest/rustdoc_json | |
FIXME: Add check for trait bound that is already present, particularly `?Sized` so we | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME: Add checking whether the bindings are actually used in the prefix | rustc_mir_build/src/thir/pattern/check_match | |
FIXME: Add pretty_aggregate function that returns a pretty string | stable_mir/src/mir/pretty | |
FIXME: Add rest of the statements | stable_mir/src/mir/pretty | |
FIXME: Add some nicer tooltips to each of these | tools/rust-analyzer/crates/ide/src/inlay_hints/adjustment | |
FIXME: Add support for Tuple Structs. Tuple Structs are not sent to this diagnostic | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/unresolved_field | |
FIXME: Add support for nested ref slices when using `render_eval` | tools/rust-analyzer/crates/ide-assists/src/handlers/inline_const_as_literal | |
FIXME: Add support for non-integer types | rustc_codegen_cranelift/src/abi/mod | |
FIXME: Add support for unary tuple expressions when using `render_eval` | tools/rust-analyzer/crates/ide-assists/src/handlers/inline_const_as_literal | |
FIXME: Add support to handle type aliases for builtin scalar types | tools/rust-analyzer/crates/ide-assists/src/handlers/inline_const_as_literal | |
FIXME: Add this variant and delete the `retain_adt_literal_usages` function | tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: Adjust hygiene for idents from globs, like for glob imports | rustc_resolve/src/macros | |
FIXME: All annotation should be resolvable | tools/rust-analyzer/crates/hir-ty/src/tests/traits tools/rust-analyzer/crates/hir-ty/src/tests/traits | |
FIXME: All upstream crates are deserialized internally in the | rustc_codegen_gcc/src/back/lto rustc_codegen_llvm/src/back/lto | |
FIXME: Allow Redox prefixes | std/src/sys/path/unix | |
FIXME: Allow attributes in pattern constexprs? | ui/parser/attribute/attr-stmt-expr-attr-bad | |
FIXME: Allow configuring the replacement of `self` | tools/rust-analyzer/crates/ide-assists/src/handlers/convert_closure_to_fn | |
FIXME: Allow for choosing a visibility modifier see rust-lang/rust-analyzer/issues/11563 | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/unresolved_field tools/rust-analyzer/crates/ide-diagnostics/src/handlers/unresolved_field | |
FIXME: Also add a test for <rust-lang/rust/issues/66738>, once that is fixed | tools/miri/tests/pass/issues/issue-miri-1075 | |
FIXME: Also detect the proposed lsp version at caps.workspace.workspaceEdit.snippetEditSupport | tools/rust-analyzer/crates/rust-analyzer/src/config | |
FIXME: Also do this for Windows once incremental post-optimization stage0 tests | bootstrap/src/core/build_steps/compile | |
FIXME: Also make use of the syntax context to determine which site we are at? | tools/rust-analyzer/crates/ide/src/navigation_target | |
FIXME: Also print `#[doc(hidden)]` for `macro_rules!` if it `is_doc_hidden` | rustdoc/html/render/print_item | |
FIXME: Also, include column numbers into the debug format as Display already has them | std/src/backtrace | |
FIXME: Also, what about considering >1 layer up the stack? May be necessary | rustc_trait_selection/src/solve/fulfill | |
FIXME: An "unclosed `char`" error will be emitted already in some cases | rustc_parse/src/lexer/mod | |
FIXME: An ambiguity error should be thrown for `error` | ui/imports/extern-with-ambiguous-2 ui/imports/extern-with-ambiguous-3 | |
FIXME: Any emitted errors are dropped | tools/rust-analyzer/crates/mbe/src/expander/transcriber | |
FIXME: Append `::` to the thing here, since a trait on its own won't work | tools/rust-analyzer/crates/ide-completion/src/completions/expr | |
FIXME: Are we just trying to map to the `T` in `MaybeUninit<T>`? | rustc_hir_analysis/src/check/intrinsicck | |
FIXME: Arguably this should be an error, but the WARNINGS group is | ui/lint/forbid-group-group-1 | |
FIXME: As above, we'd like to print out the region | rustc_borrowck/src/universal_regions | |
FIXME: Associated items on some primitives aren't working, because the impls | rustdoc-ui/intra-doc/non-path-primitives | |
FIXME: Assume that all nonterminals are not equal, we can't compare them | rustc_ast/src/token | |
FIXME: At some point when our hir infra is fleshed out enough we should flip this and traverse the | tools/rust-analyzer/crates/ide/src/inlay_hints | |
FIXME: Autogenerate this instead of enumerating by hand | tools/rust-analyzer/crates/ide-diagnostics/src/lib | |
FIXME: Automate gathering of all relevant C source files in the directory | tools/miri/tests/ui | |
FIXME: Avoid having to adjust the signature both here and in | rustc_mir_transform/src/shim | |
FIXME: Before moving this lint out of nursery, the lint name needs to be updated. It now also | tools/clippy/clippy_lints/src/option_if_let_else | |
FIXME: Borrow checker problems without this | tools/rust-analyzer/crates/hir-ty/src/infer/closure | |
FIXME: Borrow checker won't allow without this | tools/rust-analyzer/crates/hir-ty/src/infer/closure tools/rust-analyzer/crates/hir-ty/src/infer/closure | |
FIXME: Bound vars matter here! | rustc_type_ir/src/outlives | |
FIXME: Breaking here and proceeding to `count()` isn't the most | tools/rust-analyzer/crates/mbe/src/expander/transcriber | |
FIXME: Built-in derives often forget to give spans contexts | rustc_builtin_macros/src/deriving/mod | |
FIXME: Built-in target specs occasionally use this for linking system libraries | rustc_codegen_ssa/src/back/link | |
FIXME: Can they contain const arguments and thus leak private struct fields? | rustc_metadata/src/rmeta/encoder | |
FIXME: Can this be `Some` for `Auto` or `Blanket`? | rustdoc/core | |
FIXME: Can this just be part of [`graph::DirectedGraph`]? | rustc_mir_transform/src/coverage/counters/iter_nodes | |
FIXME: Can we derive this from somewhere else? | tools/rust-analyzer/crates/rust-analyzer/src/global_state | |
FIXME: Can we do this for arguments as well? | rustc_mir_transform/src/nrvo | |
FIXME: Can we do this for simple coroutines too? | rustc_codegen_ssa/src/mir/rvalue | |
FIXME: Can we implement this in terms of `add` and `inject`? | rustc_next_trait_solver/src/delegate | |
FIXME: Can we just change the type on this to `Alignment`? | core/src/alloc/layout | |
FIXME: Can we remove this somehow? | tools/rust-analyzer/crates/hir-expand/src/mod_path | |
FIXME: Cannot use a `pub` macro 2.0 in a staged API crate due to reachability issues | ui/macros/auxiliary/unstable-macros | |
FIXME: Cargo should probably do this itself | bootstrap/src/core/build_steps/doc | |
FIXME: Censoring info should be calculated by the caller! Namely by name resolution | tools/rust-analyzer/crates/hir-expand/src/db | |
FIXME: Change `node_` prefix to something more reasonable | tools/rust-analyzer/crates/hir-def/src/body | |
FIXME: Change this back to `LazyCell` if rust-lang/libs-team/issues/429 is accepted | tools/rust-analyzer/crates/hir-def/src/generics | |
FIXME: Change this once we have CtorKind in StableMIR | stable_mir/src/mir/pretty | |
FIXME: Check for defaultness here may cause diagnostics problems | rustc_trait_selection/src/solve/delegate | |
FIXME: Check if the signature matches | rustc_const_eval/src/interpret/validity | |
FIXME: Check metadata more generally | rustc_mir_transform/src/validate | |
FIXME: Check pointee types | rustc_mir_transform/src/validate | |
FIXME: Check that the arg is of the form `() -> T` | tools/rust-analyzer/crates/ide-assists/src/handlers/replace_method_eager_lazy | |
FIXME: Check that this has the form of `() -> T` where T is the current type of the argument | tools/rust-analyzer/crates/ide-assists/src/handlers/replace_method_eager_lazy | |
FIXME: Check type-relative associated types in signatures | rustc_privacy/src/lib | |
FIXME: Check whether these files could be build script related | tools/rust-analyzer/crates/rust-analyzer/src/main_loop | |
FIXME: Claiming that those kinds of QPaths are simple is probably not true if the Ty | rustc_metadata/src/rmeta/encoder | |
FIXME: Clarify interaction with SourceIter/InPlaceIterable. Calling `SourceIter::as_inner` | core/src/iter/adapters/zip | |
FIXME: Collect tokens and use them instead of generating | rustc_expand/src/expand | |
FIXME: Consider adding a reverse map to ExpansionInfo to get rid of the linear search which | tools/rust-analyzer/crates/hir-expand/src/lib | |
FIXME: Consider applying `#[inline]` / `#[inline(never)]` optimizations already applied | std/src/io/buffered/bufwriter | |
FIXME: Consider checking ctx transparency for being opaque? | tools/rust-analyzer/crates/ide/src/syntax_highlighting | |
FIXME: Consider doing normalization in the `vfs` instead? That allows | tools/rust-analyzer/crates/rust-analyzer/src/global_state | |
FIXME: Consider generic parameters that do not appear in params/return type/captures but | tools/rust-analyzer/crates/ide-assists/src/handlers/convert_closure_to_fn | |
FIXME: Consider if `#[rustc_diagnostic_item = "ptr_drop_in_place"]` is needed? | core/src/future/async_drop | |
FIXME: Consider implementing this in cg_llvm instead? | portable-simd/crates/core_simd/src/ops | |
FIXME: Consider moving this method to a more fitting place | rustc_hir_analysis/src/check/mod | |
FIXME: Consider optimizing combinators to not have to use fuse in majority | core/src/future/async_drop | |
FIXME: Consider removing this, making HirDatabase::target_data_layout an input query | tools/rust-analyzer/crates/base-db/src/lib | |
FIXME: Consider specializing this message if there is a single `_` | rustc_trait_selection/src/error_reporting/infer/need_type_info | |
FIXME: Consider using the derive resolutions (`_exts`) | rustc_expand/src/expand | |
FIXME: Consider using unsafe trait for matching protocol with guid | std/src/sys/pal/uefi/helpers | |
FIXME: Consider wrapping the hidden type in an existential `Binder` and instantiating it | rustc_hir_analysis/src/check/check | |
FIXME: ControlFlow and ContainerInfo both track some function modifiers, feels like these two should | tools/rust-analyzer/crates/ide-assists/src/handlers/extract_function | |
FIXME: Copied from librustc_ast until linkage errors are resolved. Issue #47566 | test/src/cli | Closed |
FIXME: Could also check that the RPIT is not defined | rustc_hir_typeck/src/_match | |
FIXME: Could be optimized to not walk into components with no escaping bound vars | rustc_type_ir/src/ty_kind/closure | |
FIXME: Could we make `build_with_canonical` into `enter_with_canonical` and call this at the end? | rustc_next_trait_solver/src/solve/eval_ctxt/mod | |
FIXME: Currently only handles ?Sized | rustc_trait_selection/src/error_reporting/traits/mod | |
FIXME: Currently shows "cannot determine" but should be `false` | ui/conditional-compilation/cfg_accessible-bugs | |
FIXME: Currently shows "not sure" but should be `false` | ui/conditional-compilation/cfg_accessible-bugs | |
FIXME: Currently we force all DISCR_* values to be u64's as LLDB seems to have | rustc_codegen_llvm/src/debuginfo/metadata/enums/cpp_like | |
FIXME: Currently we lower every bounds in a trait alias as a trait bound on `Self` i.e | tools/rust-analyzer/crates/hir/src/display | |
FIXME: Currently, rust is invoking cc to link, which ends up | rustc_target/src/spec/base/illumos | |
FIXME: Currently, we cannot represent partial initialization | tools/miri/src/concurrency/weak_memory | |
FIXME: Currently, we only report suggestions if the `RegionNameSource` is an early-bound | rustc_borrowck/src/diagnostics/outlives_suggestion | |
FIXME: Deal with type aliases? | rustc_hir_typeck/src/fn_ctxt/adjust_fulfillment_errors rustc_hir_typeck/src/fn_ctxt/adjust_fulfillment_errors rustc_hir_typeck/src/fn_ctxt/adjust_fulfillment_errors rustc_hir_typeck/src/fn_ctxt/adjust_fulfillment_errors rustc_hir_typeck/src/fn_ctxt/adjust_fulfillment_errors | |
FIXME: Decide what public API we want for these two flags | core/src/fmt/mod | |
FIXME: Decide what should be used here, `=` or `==` | rustc_parse/src/parser/generics | |
FIXME: Deduplicate this with hir::Local::sources() | tools/rust-analyzer/crates/hir-ty/src/tests/closure_captures | |
FIXME: Definition should include known lints and the like instead of having this special case here | tools/rust-analyzer/crates/ide/src/hover | |
FIXME: Depending on the PassMode, this should reset some padding to uninitialized. (This | rustc_const_eval/src/interpret/call | |
FIXME: Detect and report the deadlock proactively. (We currently | tools/miri/src/shims/unix/sync | |
FIXME: Determine where exactly these args need to be inserted | rustc_codegen_ssa/src/back/link rustc_codegen_ssa/src/back/link rustc_codegen_ssa/src/back/link rustc_codegen_ssa/src/back/link | |
FIXME: Diagnose | tools/rust-analyzer/crates/hir-def/src/hir/format_args tools/rust-analyzer/crates/hir-def/src/hir/format_args tools/rust-analyzer/crates/hir-def/src/hir/format_args tools/rust-analyzer/crates/hir-def/src/hir/format_args tools/rust-analyzer/crates/hir-def/src/hir/format_args | |
FIXME: Disabled on Miri as the intrinsics are not implemented yet | std/build std/build | |
FIXME: Do some kind of check of the inner type, like for Scalar and ScalarPair | rustc_ty_utils/src/layout/invariant | |
FIXME: Do these need handling? | rustdoc/formats/cache | |
FIXME: Do this differently, this is very inflexible the caller | tools/rust-analyzer/crates/ide/src/navigation_target | |
FIXME: Do unescaping in a less ad-hoc way, and perhaps support escaped | tools/compiletest/src/header | |
FIXME: Do unsafe analysis on expression, sem highlighting knows this so we should be able | tools/rust-analyzer/crates/ide-assists/src/handlers/extract_function | |
FIXME: Do we really need this `local_used_in` check? | tools/clippy/clippy_lints/src/eta_reduction | |
FIXME: Do what rustc does for repetitions | tools/rust-analyzer/crates/mbe/src/expander/transcriber | |
FIXME: Document and simplify this | tools/rust-analyzer/crates/hir-def/src/item_scope | |
FIXME: Document these and merge with the list below | rustc_feature/src/unstable | |
FIXME: Document this | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: Does `&raw const foo` allow mutation? See #90413 | rustc_mir_dataflow/src/impls/initialized | Closed |
FIXME: Does `asm!` have any aliasing requirements? | rustc_mir_transform/src/coroutine | |
FIXME: Does it make sense to have this here? | tools/rust-analyzer/crates/span/src/map | |
FIXME: Does this need extra logic to handle let-chains? | rustc_mir_build/src/builder/expr/into | |
FIXME: Doesn't handle "path-like" primitives like arrays or tuples | rustdoc/html/render/span_map | |
FIXME: Doing the merge step of a merge sort here would be a bit more performant | tools/rust-analyzer/crates/rust-analyzer/src/diagnostics | |
FIXME: Don't `unwrap_or`, I think we should panic if we encounter an infer var that | rustdoc/clean/auto_trait | |
FIXME: Don't bother dealing with non-lifetime binders here | rustc_hir_analysis/src/hir_ty_lowering/mod | |
FIXME: Don't consider alias bounds on types that have escaping bound | rustc_infer/src/infer/outlives/for_liveness | |
FIXME: Don't delete storage statements, but "merge" the storage ranges instead | rustc_mir_transform/src/dest_prop | |
FIXME: Don't hard-code this offset. Is this meant to represent | rustc_errors/src/emitter | |
FIXME: Don't inline user-written `extern "rust-call"` functions | rustc_mir_transform/src/inline | |
FIXME: Due to shortcomings in the current type system implementation, only emit | tools/rust-analyzer/crates/hir-ty/src/diagnostics/expr | |
FIXME: Edition | tools/rust-analyzer/crates/ide/src/lib | |
FIXME: Edition, is this rightr? | tools/rust-analyzer/crates/hir-def/src/nameres/mod_resolution | |
FIXME: Emit lexer warnings | tools/rust-analyzer/crates/syntax/src/validation | |
FIXME: Emitting whitespace for this is really just a hack, we should get rid of it | tools/rust-analyzer/crates/syntax-bridge/src/lib | |
FIXME: Enable bolt for aarch64 once it's fixed upstream. Broken as of December 2024 | tools/opt-dist/src/main | Closed |
FIXME: Enable this when the FIXME on FnAbi regarding PartialEq is fixed | tools/rust-analyzer/crates/hir-ty/src/display | |
FIXME: Enforce that values are structurally-matchable | rustc_trait_selection/src/traits/wf | |
FIXME: Ensure this won't cause a deadlock before we return | rustc_query_system/src/query/job | |
FIXME: Even though negative bounds are not implemented, we could maybe handle | rustc_hir_typeck/src/method/suggest | |
FIXME: Eventually this trait should become `#[rustc_deny_explicit_impl]` | core/src/marker | |
FIXME: Eventually uplift the impl out of rustc and make this defaulted | rustc_type_ir/src/inherent | |
FIXME: Experiment with choosing most common words in overall data set | tools/unicode-table-generator/src/raw_emitter | |
FIXME: Extend builder tests to cover the `crates` field of `Std` instances | bootstrap/src/core/build_steps/compile | |
FIXME: Extend this to other cases, such as associated types/consts/enum variants (note those can be `use`d) | tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: FP, because the `MutexGuard` is dropped before crossing the await point. This is | tools/clippy/tests/ui/await_holding_lock | |
FIXME: Fallback for 'static and '_, as we do not resolve these yet | tools/rust-analyzer/crates/ide/src/syntax_highlighting/highlight | |
FIXME: Feature gating is performed inconsistently between `Expr` and `OptExpr` | rustc_expand/src/expand | |
FIXME: Fetching metadata is a slow process, as it might require | tools/rust-analyzer/crates/project-model/src/cargo_workspace | |
FIXME: Figure out a better way for the IDE layer to resolve these? | tools/rust-analyzer/crates/hir-def/src/nameres | |
FIXME: Figure out an API that makes proper use of ctx, this only exists to | tools/rust-analyzer/crates/hir-expand/src/files tools/rust-analyzer/crates/hir-expand/src/files | |
FIXME: Figure out cases in which WASM needs to link with a native toolchain | rustc_target/src/spec/base/wasm rustc_target/src/spec/targets/wasm32_wasip1 rustc_target/src/spec/targets/wasm32_wasip1_threads rustc_target/src/spec/targets/wasm32_wasip2 | |
FIXME: Figure out how to do labels in SMIR | rustc_smir/src/rustc_smir/convert/mir | |
FIXME: Figure out how to remove `visibilities_for_hashing` by hashing visibilities on | rustc_middle/src/hir/map/mod | |
FIXME: Figure out if this is correct wrt. match ergonomics | tools/rust-analyzer/crates/hir-ty/src/mir | |
FIXME: Figure out the way to get a correct span when converting `try!` to `?` | tools/rustfmt/src/chains | |
FIXME: Figure out why this doesn't work anymore | tools/rust-analyzer/crates/ide-ssr/src/tests | |
FIXME: Fill me in with more detail when the interface settles | core/src/lib | |
FIXME: Fill out the rest of this matrix | rustdoc/json/conversions | |
FIXME: Find a better heuristic for "native musl toolchain is available" | rustc_codegen_ssa/src/back/link | |
FIXME: Find a better way of ignoring the trailing | rustc_lint/src/redundant_semicolon | |
FIXME: Find a better way to detect those cases | tools/clippy/clippy_lints/src/misc_early/mod | |
FIXME: Find a better way to know if it is a dylib | tools/rust-analyzer/crates/project-model/src/build_dependencies | |
FIXME: Find a cleaner way to support varargs | rustc_codegen_cranelift/src/abi/mod | |
FIXME: Find a more principled way to solve this problem | rustc_mir_transform/src/coverage/spans/from_mir | |
FIXME: Find better API that also handles const generics | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: Find better API to also handle const generics | tools/rust-analyzer/crates/hir/src/lib tools/rust-analyzer/crates/hir/src/lib tools/rust-analyzer/crates/hir/src/lib tools/rust-analyzer/crates/hir/src/lib | |
FIXME: Find out where to report the lint on. Maybe simply crate-level lint root | rustc_monomorphize/src/mono_checks/move_check | |
FIXME: Fix "Cannot determine resolution" error and remove built-in macros | rustc_passes/src/check_attr | |
FIXME: Fold this into Block with an unsafe flag? | tools/rust-analyzer/crates/hir-def/src/hir | |
FIXME: Fold this into InternalError | tools/rust-analyzer/crates/hir-ty/src/mir/eval | |
FIXME: For backward dataflow analyses, the initial state should be applied to every basic | rustc_mir_dataflow/src/framework/mod | |
FIXME: For now, should only be used with def_kinds from ItemIds | rustc_hir/src/target | |
FIXME: For now, we handle `DefKind` if it's not a `DefKind::TyParam` | rustdoc/html/render/span_map | |
FIXME: For some reason, `#[cfg(doc)]` wasn't sufficient, resulting in | alloc/src/collections/vec_deque/mod | |
FIXME: Function definitions could actually implement `FnPtr` by | rustc_trait_selection/src/traits/select/candidate_assembly | |
FIXME: GCC doesn't support __builtin_arm_isb yet, check if this builtin is OK | rustc_codegen_gcc/src/intrinsic/llvm | |
FIXME: Generate proper `index_mut` method body refer to `index` method body may impossible due to the unpredictable case [#15581] | tools/rust-analyzer/crates/ide-assists/src/handlers/generate_mut_trait_impl | Closed |
FIXME: Generic parameter `T` should be part of impl, not method | tools/rust-analyzer/crates/ide-assists/src/handlers/generate_function | |
FIXME: Get rid of this lock. We have ownership of the QueryWaiter | rustc_query_system/src/query/job | |
FIXME: Get rid of this, it's not a good abstraction | tools/rust-analyzer/crates/hir-ty/src/chalk_ext | |
FIXME: GitHub's UI truncates file lists that exceed 1000 entries, so these | tools/tidy/src/ui_tests | Closed |
FIXME: Give a bonus to functions with only a single caller | rustc_mir_transform/src/inline | |
FIXME: Give this a better fitting name | tools/rust-analyzer/crates/span/src/lib | |
FIXME: HVX length defaults are per-CPU | rustc_target/src/spec/targets/hexagon_unknown_linux_musl | |
FIXME: Hack for mutable syntax trees not having great support for macros | tools/rust-analyzer/crates/ide-assists/src/handlers/add_missing_match_arms | |
FIXME: Handle `Invisible`-delimited groups in a more systematic way | rustc_expand/src/mbe/quoted | |
FIXME: Handle libc++ version check | bootstrap/src/core/sanity | |
FIXME: Handle lifetimes here | tools/rust-analyzer/crates/hir/src/semantics | |
FIXME: Handle more than one span | tools/rust-analyzer/crates/hir-ty/src/mir/lower | |
FIXME: Handle owners of blocks correctly here | tools/rust-analyzer/crates/ide/src/navigation_target | |
FIXME: Having to clone `region_constraints` for folding feels bad and | rustc_middle/src/traits/solve rustc_middle/src/traits/solve | |
FIXME: Here and elsewhere in this file, the `expr` was | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: Here's a false positive | ui/lint/unused/lint-unused-mut-variables | |
FIXME: How can we handle renaming any one of multiple anonymous lifetimes? | tools/rust-analyzer/crates/ide-assists/src/handlers/introduce_named_lifetime | |
FIXME: How can we integrate it with the `update_resolution`? | rustc_resolve/src/lib | |
FIXME: How we should handle this? | ui/lint/special-upper-lower-cases | |
FIXME: However, for trait aliases, this incorrectly returns the enclosing module | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME: I am probably not unsafe | std/src/sys/pal/unix/stack_overflow std/src/sys/pal/unix/stack_overflow | |
FIXME: I guess we could also check something here? Like, look at all fields? | rustc_ty_utils/src/layout/invariant rustc_ty_utils/src/layout/invariant | |
FIXME: I probably cause more bugs than I'm worth! | std/src/sys/pal/unix/stack_overflow | |
FIXME: I sometimes use memory, sometimes use an IR aggregate! | rustc_abi/src/lib | |
FIXME: I think This could be generalized to not bool if we | rustc_mir_transform/src/jump_threading | |
FIXME: I think we should just control the flags externally | rustc_mir_dataflow/src/elaborate_drops | |
FIXME: I'm sure there's already better way to do this | tools/rust-analyzer/crates/hir-def/src/macro_expansion_tests/mod | |
FIXME: Ideally MIR types are normalized, but this is not always true | rustc_borrowck/src/type_check/canonical | |
FIXME: Ideally constants in const eval should have separate body (issue #7434), and this function should | tools/rust-analyzer/crates/hir-ty/src/consteval | Closed |
FIXME: Ideally here we should do everything that we do with type alias, i.e. adding a variable | tools/rust-analyzer/crates/hir-ty/src/infer/unify | |
FIXME: Ideally these suggestions would be fixed via rustfix. Blocked by rust-lang/rust#53934 | tools/clippy/tests/ui/print_with_newline tools/clippy/tests/ui/significant_drop_in_scrutinee tools/clippy/tests/ui/write_with_newline | Open |
FIXME: Ideally this should be handled in fixup in a structured way, but our list | tools/rust-analyzer/crates/parser/src/grammar | |
FIXME: Ideally type mismatch should be reported on `take_u32(42 - p)` | tools/rust-analyzer/crates/hir-ty/src/tests/traits | |
FIXME: Ideally we could give an unreachable warning | ui/c-variadic/variadic-unreachable-arg-error | |
FIXME: Ideally we should look into the generic constant | rustc_trait_selection/src/error_reporting/infer/need_type_info | |
FIXME: Ideally we should support this. For that | rustc_trait_selection/src/error_reporting/infer/need_type_info | |
FIXME: IdentClass as a name no longer fits | tools/rust-analyzer/crates/ide-db/src/defs | |
FIXME: If Rust ever gains the ability to `use Struct::method` we'll also need to account for free | tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: If `type_alias_impl_trait` is enabled, also look for `Trait0<Ty = Trait1>` | rustc_hir_analysis/src/hir_ty_lowering/lint | |
FIXME: If can reliably detect that MSVC's link.exe is used, then | tools/compiletest/src/runtest/debuginfo | |
FIXME: If it is unreachable, use proper error instead of `not_supported` | tools/rust-analyzer/crates/hir-ty/src/mir/lower | |
FIXME: If normal `transmute` ever gets smart enough to allow this | core/src/array/iter | |
FIXME: If one `let` is wrapped in parentheses and the second is not | tools/rust-analyzer/crates/ide-assists/src/handlers/replace_if_let_with_match | |
FIXME: If the code is changed enough for this node to be marked before requiring the | rustc_query_system/src/dep_graph/graph | |
FIXME: If the next segment doesn't resolve in the module and | tools/rust-analyzer/crates/hir-def/src/nameres/path_resolution | |
FIXME: If there are more than one attributes, this will force multiline | tools/rustfmt/src/types | |
FIXME: If there are multiple items, it's definitely redundant (and it's hacky! | tools/rust-analyzer/crates/mbe/src/expander/matcher | |
FIXME: If this is the first arm and the pattern is irrefutable | rustc_hir_typeck/src/_match | |
FIXME: If this span comes from a `derive` macro but it points at code the user wrote | rustc_span/src/lib | |
FIXME: If this test fails and the compiler does print to the console | run-make/emit-to-stdout/rmake | |
FIXME: If this wide pointer is a `Box` then we don't want to use its | rustc_codegen_llvm/src/debuginfo/metadata | |
FIXME: If trait lowering fails, due to a non PathType for example, we treat this impl | tools/rust-analyzer/crates/hir-def/src/item_tree/lower | |
FIXME: If two macros in the same module have the same name | rustdoc/macro-document-private-duplicate | |
FIXME: If we also fix `SegmentParam`, then we should apply the same | tools/rustfmt/src/overflow | |
FIXME: If we are in an expression context (i.e. fn bodies and const exprs) then the default is | rustdoc/clean/mod | |
FIXME: If we cannot determine the size (because the unsized tail is an `extern type`) | tools/miri/src/borrow_tracker/stacked_borrows/mod | |
FIXME: If we ever add an inherent impl for tuples | rustdoc/clean/types | |
FIXME: Immediately expanding in "Case 1" is insufficient since "Case 2" may also define | tools/rust-analyzer/crates/hir-def/src/nameres/collector | |
FIXME: Implement for other items if necessary. As we do not support #[cfg_eval] yet, we do not need to implement it for now | tools/rust-analyzer/crates/hir-expand/src/cfg_process | |
FIXME: Implement these with renaming requirements so that e.g | rustc_resolve/src/ident | |
FIXME: Implement this on struct | tools/rustfmt/config_proc_macro/src/config_type | |
FIXME: Implement this struct | tools/rustfmt/tests/source/enum tools/rustfmt/tests/target/enum | |
FIXME: Implements subset of HashMap API | rustc_data_structures/src/sso/map | |
FIXME: Implements subset of HashSet API | rustc_data_structures/src/sso/set | |
FIXME: In HashMap most methods accepting key reference | rustc_data_structures/src/sso/map | |
FIXME: In case it imports multiple items under different namespaces we just pick one arbitrarily | tools/rust-analyzer/crates/hir/src/symbols | |
FIXME: In practice built-in target specs use this for arbitrary order-independent options | rustc_codegen_ssa/src/back/link rustc_codegen_ssa/src/back/link | |
FIXME: In principle, the inherited base LLVM target code model could be large | rustc_session/src/session | |
FIXME: In some rare cases `AssocItem::container_or_implemented_trait` returns `None` for trait methods | tools/rust-analyzer/crates/rust-analyzer/src/cli/analysis_stats | |
FIXME: In the future, we should also call `prepare_for_native_call` on all previously | tools/miri/src/shims/native_lib | |
FIXME: In which cases should we trigger UB when the source is uninit? | rustc_const_eval/src/interpret/cast | |
FIXME: Incorporate this into [`BitRelations`] and fill out | rustc_index/src/bit_set | |
FIXME: Inherited `impl Trait`s create query cycles when used inside trait impls | ui/delegation/unsupported | |
FIXME: Instantiated functions with i128 in the signature is not supported in Emscripten | alloc/tests/lib core/tests/hash/mod | |
FIXME: Instead of bailing out with None, we should note down that | tools/rust-analyzer/crates/ide-db/src/imports/insert_use tools/rust-analyzer/crates/ide-db/src/imports/insert_use tools/rust-analyzer/crates/ide-db/src/imports/insert_use | |
FIXME: Instead of searching through the attributes again to get span | rustc_lint/src/foreign_modules | |
FIXME: Instead of using the hard-coded `23` value, better to compute it instead | rustc_codegen_gcc/build_system/src/test | |
FIXME: Instead of waiting try generating all trait methods, and pruning | rustc_resolve/src/macros | |
FIXME: Interner argument is needed to constrain the `I` parameter | rustc_next_trait_solver/src/solve/normalizes_to/opaque_types | |
FIXME: Is a memcpy really the best we can do? | codegen/simd/packed-simd-alignment | |
FIXME: Is it correct for us to only take the span at the start? This feels somewhat | tools/rust-analyzer/crates/hir-expand/src/span_map | |
FIXME: Is it really perf sensitive to use reuse_or_mk_predicate here? | rustc_middle/src/ty/predicate | |
FIXME: Is the trait scope needed for trait impl assoc items? | tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: Is the upper bound a better guess? Or something else? | alloc/src/vec/splice | |
FIXME: Is there a better place to put this? | core/src/primitive_docs | |
FIXME: Issue-3581: this should be renamed to ItemsLayout when publishing 2.0 | tools/rustfmt/src/config/options | Closed |
FIXME: It may be better to take the first if there are multiple | rustc_hir_typeck/src/fn_ctxt/adjust_fulfillment_errors | |
FIXME: It may be faster if we build just a stage 1 compiler and then | bootstrap/src/core/build_steps/compile | |
FIXME: It might be a good idea to handle lifetime parameters too | tools/rust-analyzer/crates/ide-assists/src/handlers/generate_function | |
FIXME: It might be better to use the same value for both `RUSTFLAGS` and `RUSTDOCFLAGS` | bootstrap/src/core/builder/cargo | |
FIXME: It should infer the eldided lifetimes instead of stubbing with static | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME: It should never happens, but currently it will happen in `const_dependent_on_local` test, which | tools/rust-analyzer/crates/hir-ty/src/mir/lower | |
FIXME: It should return a new hir::Type, but currently constructing new types is too cumbersome | tools/rust-analyzer/crates/ide-assists/src/utils | |
FIXME: It would be nice for this to work. See #94067 | ui/async-await/drop-track-field-assign-nonsend ui/async-await/field-assign-nonsend | Open |
FIXME: It would be nice to have a less-awkward way to apply permutations | rustc_mir_transform/src/prettify | |
FIXME: It would be nice to make this not use string manipulation | rustc_middle/src/ty/diagnostics rustc_middle/src/ty/diagnostics | |
FIXME: It would possibly be better to do this more continuously, at each level | rustc_hir_typeck/src/fn_ctxt/adjust_fulfillment_errors | |
FIXME: It would probably be nicer if we could get this via HIR (i.e. get the | tools/rust-analyzer/crates/ide-db/src/path_transform | |
FIXME: It'd be great if we could add suggestion to the following case | ui/parser/trait-object-lifetime-parens | |
FIXME: It'd be great if we could also warn them | ui/lint/unused/issue-74883-unused-paren-baren-yield | |
FIXME: It'd be nice to print the late-bound regions | rustc_borrowck/src/universal_regions | |
FIXME: It's not clear that this code ought to report | ui/higher-ranked/trait-bounds/issue-59311 | |
FIXME: It's suspicious that this is public; clippy should probably use `walk_expr` | rustc_hir_typeck/src/expr_use_visitor | |
FIXME: It's very weird that we ignore region obligations but apparently | rustc_trait_selection/src/traits/mod | |
FIXME: Known buggy cases are described here | tools/rust-analyzer/crates/rust-analyzer/src/cli/scip | |
FIXME: LLVM generates invalid debug info for variables requiring | debuginfo/simd | |
FIXME: LLVM only supports this optimization for `Lto::Fat` currently. Once it also | rustc_codegen_llvm/src/debuginfo/metadata | |
FIXME: Limit the length and bail out on excess somehow? | tools/rust-analyzer/crates/ide/src/inlay_hints | |
FIXME: Linear lookup | tools/rust-analyzer/crates/hir-def/src/data/adt | |
FIXME: Lint attributes currently don't work directly on macros, and | ui/lint/rfc-2383-lint-reason/expect_lint_from_macro | |
FIXME: Literals are already lexed by this point, so we can't recover gracefully just by | rustc_parse/src/lexer/unicode_chars | |
FIXME: Longterm canonical queries should deal with all placeholders | rustc_next_trait_solver/src/solve/eval_ctxt/canonical | |
FIXME: MSVC 2015+ will pass the first 3 vector arguments in [XYZ]MM0-2 | rustc_target/src/callconv/x86 | Closed |
FIXME: Macro calls | tools/rust-analyzer/crates/hir/src/semantics/child_by_source | |
FIXME: Macro shadowing in one module is not properly handled. Non-item place macros will | tools/rust-analyzer/crates/hir-def/src/item_scope | |
FIXME: Make better use of this. Right now things like return and break without a value | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | |
FIXME: Make the control flow more proper | tools/rust-analyzer/crates/ide-db/src/syntax_helpers/node_ext | |
FIXME: Make this >= 3, and migrate len(values)==1 cases to @is | tools/jsondocck/src/main | |
FIXME: Make this a SyntaxContextExt method once we have RPIT | tools/rust-analyzer/crates/hir-expand/src/hygiene | |
FIXME: Make this a submodule of [`pattern`] | tools/rust-analyzer/crates/ide-completion/src/completions/fn_param | |
FIXME: Make this an enum | tools/rust-analyzer/crates/ide-diagnostics/src/lib | |
FIXME: Make this failible, so jsonpath syntax error has line number | tools/jsondocck/src/cache | |
FIXME: Make this into a real type op? | rustc_borrowck/src/type_check/canonical rustc_borrowck/src/type_check/canonical | |
FIXME: Make this smaller, its stored in database queries | tools/rust-analyzer/crates/hir-ty/src/mir/lower | |
FIXME: Maybe do something smarter for Ref types too? | rustc_codegen_ssa/src/traits/builder | |
FIXME: Maybe need to normalize here | rustc_hir_typeck/src/expr_use_visitor | |
FIXME: Maybe these calls to `lower_ty` can be removed (and the ones below) | rustc_hir_typeck/src/fn_ctxt/suggestions | |
FIXME: Maybe this could use insertvalue/extractvalue instead? | rustc_codegen_ssa/src/mir/rvalue | |
FIXME: Maybe this needs to be relative to the project size, or at least to the initial search scope? | tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: Maybe we can indent this properly, adding newlines and all, but this is hard | tools/rust-analyzer/crates/ide-assists/src/handlers/convert_closure_to_fn | |
FIXME: Maybe we should merge copy and clone in a single flag? | tools/rust-analyzer/crates/ide-diagnostics/src/tests | |
FIXME: Merge this diagnostic into UnresolvedField? | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: Merge this function to `add_upstream_rust_crates` so that all native libraries | rustc_codegen_ssa/src/back/link | |
FIXME: Merge this lint with USELESS_TRANSMUTE once that is out of the nursery | tools/clippy/clippy_lints/src/transmute/mod | |
FIXME: Merge this with the forced ambiguity candidates, so those don't use `Misc` | rustc_type_ir/src/solve/mod | |
FIXME: Merge with the `else` below? | rustc_codegen_gcc/src/builder rustc_codegen_llvm/src/builder | |
FIXME: Meta and Item should get proper defaults | tools/rust-analyzer/crates/mbe/src/expander/transcriber | |
FIXME: Migrate these code after PR #130693 is landed | assembly/rust-abi-arg-attr | Closed |
FIXME: Missing variables | tools/rust-analyzer/crates/project-model/src/env | |
FIXME: Module doesn't have visibility saved in data | tools/rust-analyzer/crates/hir/src/display | |
FIXME: More robust support for checking things in $.index also exist in $.paths | tools/jsondoclint/src/validator | |
FIXME: Move `/LIBPATH` addition for uwp targets from the linker construction | rustc_codegen_ssa/src/back/linker | |
FIXME: Move into r-efi once extended_varargs_abi_support is stablized | std/src/sys/pal/uefi/helpers std/src/sys/pal/uefi/helpers | |
FIXME: Move more of the nameres independent tests from | tools/rust-analyzer/crates/mbe/src/tests | |
FIXME: Move some of these arms out into separate methods for clarity | tools/rust-analyzer/crates/hir-def/src/body/lower | |
FIXME: Move these to an `arm` submodule | tools/miri/src/shims/foreign_items | |
FIXME: Move this check out of typeck, since it'll easily cycle when revealing opaques | rustc_hir_typeck/src/intrinsicck | |
FIXME: Move this into `InferenceContext` | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME: Move this into context/analysis.rs | tools/rust-analyzer/crates/ide-completion/src/completions/attribute/cfg | |
FIXME: Move this into load-cargo? | tools/rust-analyzer/crates/rust-analyzer/src/reload | |
FIXME: Move this into the span crate? Not quite possible today as that depends on `MacroCallLoc` | tools/rust-analyzer/crates/hir-expand/src/hygiene | |
FIXME: Move this to `complexity` again, after #5343 is fixed | tools/clippy/clippy_lints/src/transmute/mod | Closed |
FIXME: Move this to `fn linker_with_args` | rustc_codegen_ssa/src/back/linker | |
FIXME: Move this to a more appropriate place | rustc_hir_analysis/src/check/mod | |
FIXME: Move update_submodule into build_helper, that way we can also ensure the submodule | tools/opt-dist/src/main | |
FIXME: Multiple derives can have the same helper | tools/rust-analyzer/crates/hir/src/source_analyzer | |
FIXME: NFC normalize the result | tools/rust-analyzer/crates/mbe/src/expander/transcriber | |
FIXME: Need to filter visibility here and below? Not sure | tools/rust-analyzer/crates/hir-def/src/nameres/path_resolution | |
FIXME: Needs safety information. See entry.S for `set_tls_ptr` definition | std/src/sys/pal/sgx/abi/tls/mod std/src/sys/pal/sgx/abi/tls/mod std/src/sys/pal/sgx/abi/tls/mod | |
FIXME: Nix this cfg, so we can write unit tests independently of rustc | rustc_transmute/src/maybe_transmutable/mod | |
FIXME: No way to reliably check the filename | codegen/async-fn-debug-msvc codegen/async-fn-debug codegen/coroutine-debug-msvc codegen/coroutine-debug | |
FIXME: Not all puncts are handled | tools/rust-analyzer/crates/hir-expand/src/builtin/quote | |
FIXME: Note down method resolution her | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: Omit the curly braces if the enclosing expression is an array literal | rustc_metadata/src/rmeta/encoder | |
FIXME: On AIX this also has the side-effect of making the list of library search paths | rustc_metadata/src/native_libs | |
FIXME: On macOS we use a provenance-incorrect implementation and Miri | std/src/sync/poison/rwlock/tests | |
FIXME: On macOS we use a provenance-incorrect implementation and Miri catches that issue | std/src/sync/poison/rwlock/tests std/src/sync/poison/rwlock/tests | |
FIXME: Once rust-lang/rust/issues/67792 is implemented, we can remove | rustdoc/html/render/mod rustdoc/html/render/mod | |
FIXME: Once rustdoc can handle URL conflicts on case insensitive file systems, we | rustc_passes/src/check_attr | |
FIXME: Once rustdoc can handle URL conflicts on case insensitive file systems, we can replace | std/src/keyword_docs | |
FIXME: Once the line below compiles, make this a test that | rustdoc/hide-complex-unevaluated-const-arguments | |
FIXME: Once the other errors that embed this error have been converted to translatable | rustc_middle/src/ty/layout | |
FIXME: Once the portability lint RFC is implemented (see tracking issue #41619) | rustdoc/clean/cfg | Open |
FIXME: Once the size of iterator adaptors is further reduced | ui/iterators/issue-58952-filter-type-length | |
FIXME: Once we can talk back to the client, implement a "long join" request for anchors | tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span | |
FIXME: Once we diagnose the inputs to builtin derives, we should at least extract those diagnostics somehow | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: Once we have specialized trait impl (for `Iterator` impl on `LinkReplacer`) | rustdoc/html/markdown | |
FIXME: Once we remove support for the old impl we can remove this | rustc_next_trait_solver/src/solve/eval_ctxt/mod | |
FIXME: Once we stop removing globals in `codegen_static`, we can uncomment this code | rustc_codegen_gcc/src/consts | |
FIXME: One possible strategy for pruning the reachable set is to avoid marking impl | rustc_passes/src/reachable | |
FIXME: Only emit this suggestion if the trait is dyn-compatible | rustc_hir_analysis/src/hir_ty_lowering/lint | |
FIXME: Only simple types are supported here, see if we can support | rustdoc/passes/collect_intra_doc_links | |
FIXME: Only works cross-crate | ui/const-generics/legacy-const-generics | |
FIXME: Optimize for checking for infer flags | rustc_type_ir/src/visit | |
FIXME: Our infra can't handle allow from within macro expansions rn | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/remove_trailing_return tools/rust-analyzer/crates/ide-diagnostics/src/handlers/remove_unnecessary_else tools/rust-analyzer/crates/ide-diagnostics/src/handlers/unused_variables | |
FIXME: PackageRoots dont allow specifying files, only directories | tools/rust-analyzer/crates/project-model/src/workspace | |
FIXME: Parse errors | tools/rust-analyzer/crates/hir-expand/src/builtin/fn_macro | |
FIXME: Pass the `UserWritten` segment to JSON consumer | rustdoc/json/conversions | |
FIXME: Path resolution will ICE if segment IDs present | rustc_resolve/src/macros | |
FIXME: Paths in nested macros are not handled well. See | tools/rust-analyzer/crates/ide-assists/src/utils tools/rust-analyzer/crates/ide-completion/src/completions/item_list/trait_impl tools/rust-analyzer/crates/ide-completion/src/completions/item_list/trait_impl | |
FIXME: Per doc.rust-lang.org/nightly/nightly-rustc/rustc_trait_selection/infer/at/struct.At.html#method.normalize | tools/clippy/clippy_utils/src/ty/mod | |
FIXME: Perhaps use Intel TSX to avoid locking? | std/src/sys/pal/sgx/waitqueue/spin_mutex | |
FIXME: Place the cursor at `fun_name`, like rename does | tools/rust-analyzer/crates/ide-assists/src/handlers/convert_closure_to_fn | |
FIXME: Point to the correct error span here, not just the macro-call name | tools/rust-analyzer/crates/ide-diagnostics/src/lib | |
FIXME: Print `builtin # asm` once macro `asm` uses `builtin_syntax` | rustc_ast_pretty/src/pprust/state/expr | |
FIXME: Print `builtin # format_args` once macro `format_args` uses `builtin_syntax` | rustc_ast_pretty/src/pprust/state/expr | |
FIXME: Print `builtin # global_asm` once macro `global_asm` uses `builtin_syntax` | rustc_ast_pretty/src/pprust/state/item | |
FIXME: Probably a bad idea | rustc_data_structures/src/sync | |
FIXME: Proper equality breaks `coercion::two_closures_lub` test | tools/rust-analyzer/crates/hir-ty/src/lib | |
FIXME: Properly collect tokens for empty statements | rustc_ast/src/tokenstream | |
FIXME: Properly encapsulate mir | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: Properly handle use declarations. At the moment, if our search pattern is `foo::bar` | tools/rust-analyzer/crates/ide-ssr/src/search | |
FIXME: Provide a suggestion | rustc_hir_analysis/src/hir_ty_lowering/mod | |
FIXME: Provide more fields using platform specific methods | tools/miri/src/shims/unix/fs | |
FIXME: Put these into `else if` blocks above, since they're built-in | rustc_trait_selection/src/traits/select/candidate_assembly | |
FIXME: Put this back | rustc_type_ir/src/relate rustc_type_ir/src/relate | |
FIXME: RA purposefully lacks knowledge of absolute file names | tools/rust-analyzer/crates/hir-expand/src/builtin/fn_macro | |
FIXME: RPITs are not allowed to be nested in `impl Fn() -> ...` | rustc_trait_selection/src/errors | |
FIXME: RPITs have variance, but we can't treat them as their own thing right now | tools/rust-analyzer/crates/hir-ty/src/variance | |
FIXME: Re-enable emscripten once it can catch panics | alloc/tests/vec | |
FIXME: Re-enable emscripten once it can catch panics again (introduced by #65251) | test/src/tests test/src/tests test/src/tests test/src/tests test/src/tests | Closed |
FIXME: Re-enable this test once we support choosing | ui/issues/issue-59756 | |
FIXME: Re-enable where clauses on associated types when an upstream chalk bug is fixed | tools/rust-analyzer/crates/hir-ty/src/chalk_db | |
FIXME: Reconsider if accounting for borrows in drops is necessary for const drop | rustc_const_eval/src/check_consts/resolver | |
FIXME: Record allow_internal_unstable in the macro def (not been done yet because it | tools/rust-analyzer/crates/hir-expand/src/builtin/fn_macro | |
FIXME: Redox kernel does not support setgroups yet | std/src/sys/pal/unix/process/process_unix std/src/sys/pal/unix/process/process_unix | |
FIXME: Refactor this | tools/rustfmt/src/expr | |
FIXME: Remove check that the place is initialized. This is | rustc_borrowck/src/lib | |
FIXME: Remove duplicated code | tools/rustfmt/src/reorder | |
FIXME: Remove more variants once they get added to LayoutCalculatorError | tools/rust-analyzer/crates/hir-ty/src/layout | |
FIXME: Remove once `rustc_hir_typeck` is migrated to diagnostic structs | rustc_trait_selection/src/error_reporting/infer/suggest | |
FIXME: Remove the `min-llvm-version` | codegen/try_question_mark_nop | |
FIXME: Remove the assume after <llvm/llvm-project/issues/62502> | core/src/ptr/mod | |
FIXME: Remove the comments once stabilized | tools/rust-analyzer/crates/hir-ty/src/tests/traits tools/rust-analyzer/crates/hir-ty/src/tests/traits | |
FIXME: Remove the second parameter when const string concatenation is possible | rustc_target/src/spec/base/avr_gnu | |
FIXME: Remove this | tools/rust-analyzer/crates/hir-expand/src/name | |
FIXME: Remove this import and import via `solve::` | rustc_middle/src/traits/mod | |
FIXME: Remove this import and import via `traits::solve` | rustc_middle/src/traits/query | |
FIXME: Remove this in favor of a more general QueuedTask, see `handle_did_save_text_document` | tools/rust-analyzer/crates/rust-analyzer/src/main_loop | |
FIXME: Remove this in favor of storing this in the tree | rustc_trait_selection/src/solve/select | |
FIXME: Remove this once rustc switched over to rust-project.json | tools/rust-analyzer/crates/project-model/src/workspace | |
FIXME: Remove this when we are on par with rustc in terms of inference | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME: Remove this when we implement creating `DefId`s | rustc_hir_analysis/src/lib | |
FIXME: Remove this, we can use rustc_format_parse instead | tools/rust-analyzer/crates/ide-db/src/syntax_helpers/format_string | |
FIXME: Remove this? | tools/rust-analyzer/crates/ide-db/src/imports/insert_use | |
FIXME: Remove when <rust-lang/rust/issues/125735> is implemented and aliased coroutine fields are wrapped in `UnsafePinned` | rustc_ty_utils/src/layout | |
FIXME: Rename this crate, base db is non descriptive | tools/rust-analyzer/crates/base-db/src/lib | |
FIXME: Rename this to indicate the borrow is actually not immutable | rustc_middle/src/ty/closure | |
FIXME: Render docs of the concrete trait impl function | tools/rust-analyzer/crates/ide/src/signature_help | |
FIXME: Render repr if its set explicitly? | tools/rust-analyzer/crates/hir/src/display | |
FIXME: Render the assoc item with the trait qualified | tools/rust-analyzer/crates/ide-completion/src/completions/expr | |
FIXME: Replace this with a `Try` impl once stable | tools/rust-analyzer/crates/hir-ty/src/method_resolution | |
FIXME: Replace this with the HIR info we have now | tools/rust-analyzer/crates/ide/src/syntax_highlighting/format | |
FIXME: Replace with a more general AST map (together with some other fields) | rustc_resolve/src/lib | |
FIXME: Report an error | tools/rust-analyzer/crates/hir-def/src/path/lower tools/rust-analyzer/crates/hir-def/src/path/lower tools/rust-analyzer/crates/hir-def/src/path/lower | |
FIXME: Report an error here if `record_field_list.spread().is_some()` | tools/rust-analyzer/crates/hir-def/src/body/lower | |
FIXME: Report an error here otherwise | tools/rust-analyzer/crates/hir-def/src/body/lower | |
FIXME: Report diagnostic on 404 | tools/rust-analyzer/crates/hir-def/src/nameres/collector | Closed |
FIXME: Report parse errors here | tools/rust-analyzer/crates/hir-def/src/body/lower | |
FIXME: Report syntax errors in expansion here | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME: Report this as a hard error eventually and remove equivalent errors from | rustc_expand/src/mbe/macro_check | |
FIXME: Report this back to the caller to track as dependencies | tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span | |
FIXME: Represent the above fact in the trait system somehow | rustc_middle/src/values rustc_middle/src/values rustc_middle/src/values | |
FIXME: Reservation impls should be considered during coherence checks. If we are | tools/rust-analyzer/crates/hir-ty/src/method_resolution | |
FIXME: Reserve $t0, $t1 if in mips16 mode | rustc_target/src/asm/mips | |
FIXME: Resolve changes that depend on a range of elements | tools/rust-analyzer/crates/syntax/src/syntax_editor/edit_algo | |
FIXME: Rethink this API | tools/rust-analyzer/crates/hir/src/semantics tools/rust-analyzer/crates/hir/src/semantics | |
FIXME: Retrying can make the result of this stale | tools/rust-analyzer/crates/rust-analyzer/src/main_loop | |
FIXME: Retrying can make the result of this stale? | tools/rust-analyzer/crates/rust-analyzer/src/main_loop | |
FIXME: Return expand error here | tools/rust-analyzer/crates/hir-expand/src/builtin/derive_macro tools/rust-analyzer/crates/hir-expand/src/builtin/derive_macro tools/rust-analyzer/crates/hir-expand/src/builtin/derive_macro tools/rust-analyzer/crates/hir-expand/src/builtin/derive_macro tools/rust-analyzer/crates/hir-expand/src/builtin/derive_macro tools/rust-analyzer/crates/hir-expand/src/builtin/derive_macro tools/rust-analyzer/crates/hir-expand/src/builtin/derive_macro | |
FIXME: Right now there is no concept of "thread exit" on | std/src/sys/thread_local/mod | |
FIXME: Right now, the wrong field is blamed | ui/errors/traits/blame-trait-error-spans-on-exprs | |
FIXME: Rust normally maps Unix EBADF to `Uncategorized` | std/src/sys/pal/sgx/stdio | |
FIXME: Rustc lints are not always warning, but the ones that are currently implemented are all warnings | tools/rust-analyzer/crates/ide-diagnostics/src/lib | |
FIXME: Rustc wraps the condition in a construct equivalent to `{ let _t = <cond>; _t }` | tools/rust-analyzer/crates/hir-def/src/body/lower | |
FIXME: Sadly, turning these off here disables them in such a way that they | rustc_target/src/spec/targets/x86_64h_apple_darwin | |
FIXME: Saving fuel when `&` repeating might not be a good idea if there's no TCO | tools/rust-analyzer/crates/ide-assists/src/handlers/inline_const_as_literal | |
FIXME: ScalarPair for enums is enormously complicated and it is very hard | rustc_ty_utils/src/layout/invariant | |
FIXME: Section 2.1.5 "Function Registers with Unassigned Roles" of the V8+ Technical | rustc_target/src/asm/sparc | |
FIXME: See #115212 for why this has an alloca again | codegen/swap-small-types | Closed |
FIXME: See #18772. Duplicate SymbolInformation for inherent impls is | tools/rust-analyzer/crates/rust-analyzer/src/cli/scip | Closed |
FIXME: See comment above -- we could fold the region separately or something | rustc_next_trait_solver/src/canonicalizer | |
FIXME: See highlight injection for what to do here | tools/rust-analyzer/crates/ide-db/src/documentation | |
FIXME: See if we want to do something with that err_msg | std/src/sys/pal/unix/process/process_fuchsia | |
FIXME: Seems like we can't have a suggestion and a note with different spans in a single subdiagnostic | rustc_trait_selection/src/error_reporting/infer/suggest | |
FIXME: Set %al to upperbound on float args once floats are supported | rustc_codegen_cranelift/src/abi/mod | |
FIXME: Set RUSTUP_TOOLCHAIN | tools/rust-analyzer/crates/rust-analyzer/src/handlers/request | |
FIXME: Set deprecation | tools/rust-analyzer/crates/rust-analyzer/src/handlers/request | |
FIXME: Share code with `fn update` | rustc_middle/src/middle/privacy rustc_middle/src/middle/privacy | |
FIXME: Share code with `parse_path` | rustc_ast/src/attr/mod | |
FIXME: Should I first scan suffix_first to see if | rustc_expand/src/mbe/macro_rules | |
FIXME: Should `InPlace` arguments be reset to uninit? | rustc_const_eval/src/interpret/call | |
FIXME: Should be `@!has`: rust-lang/rust/issues/111249 | rustdoc/file-creation-111249 rustdoc/redirect rustdoc/reexport-trait-from-hidden-111064-2 | |
FIXME: Should be an error for edition > 2015 | ui/conditional-compilation/cfg_accessible-not_sure | Closed |
FIXME: Should be invariant | tools/rust-analyzer/crates/hir-ty/src/variance | |
FIXME: Should not be an `Option` but `Resolver` currently does not return owners in all cases | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME: Should probably be moved into some kind of pass manager | rustc_mir_transform/src/simplify | |
FIXME: Should really be handled by `AssocItemList::add_item` | tools/rust-analyzer/crates/ide-assists/src/handlers/generate_delegate_methods | |
FIXME: Should support `extern crate` | tools/rust-analyzer/crates/ide/src/rename | |
FIXME: Should the trait be mentioned in both the decl and generics? | rustdoc-json/traits/trait_alias | |
FIXME: Should this be replaced with tcx.def_path_str? | rustdoc/visit_ast | |
FIXME: Should this error? rustc currently accepts it | tools/rust-analyzer/crates/hir-def/src/macro_expansion_tests/mbe/metavar_expr tools/rust-analyzer/crates/hir-def/src/macro_expansion_tests/mbe/metavar_expr tools/rust-analyzer/crates/hir-def/src/macro_expansion_tests/mbe/metavar_expr tools/rust-analyzer/crates/hir-def/src/macro_expansion_tests/mbe/metavar_expr tools/rust-analyzer/crates/hir-def/src/macro_expansion_tests/mbe/metavar_expr tools/rust-analyzer/crates/hir-def/src/macro_expansion_tests/mbe/metavar_expr | |
FIXME: Should this trigger? | ui/privacy/pub-priv-dep/shared_direct_private | |
FIXME: Should typeck report a 3-ary tuple for the pattern here? | tools/rust-analyzer/crates/ide/src/signature_help | |
FIXME: Should typeck report a 4-ary tuple for the expression here? | tools/rust-analyzer/crates/ide/src/signature_help | |
FIXME: Should we handle unknown mutability better? | tools/rust-analyzer/crates/hir/src/semantics | |
FIXME: Should we move this to the "libc" crate? It seems like other | std/src/sys/pal/zkvm/abi | |
FIXME: Should we record the whole vtable? | rustc_smir/src/rustc_smir/convert/mir | |
FIXME: Shouldn't this be unreachable? | rustc_hir_analysis/src/collect/predicates_of | |
FIXME: Show how `Option` is used in practice, with lots of methods | core/src/option | |
FIXME: Show the data of unsized structs | tools/rust-analyzer/crates/ide/src/hover/tests | |
FIXME: Showing these errors could be nicer | tools/rust-analyzer/crates/mbe/src/lib | |
FIXME: Shuttling between obligations and goals is awkward | rustc_infer/src/infer/opaque_types/mod | |
FIXME: Some of them shouldn't be | ui-fulldeps/pprust-parenthesis-insertion | |
FIXME: Some of these NO_RETRY could be retries if the file they are interested didn't change | tools/rust-analyzer/crates/rust-analyzer/src/main_loop | |
FIXME: Sort this instead | rustc_query_system/src/query/job | |
FIXME: SortedVec<(TextSize, ErasedFileAstId)>? | tools/rust-analyzer/crates/span/src/map | |
FIXME: Sorting this is unnecessary since we are sorting later anyway | rustc_codegen_ssa/src/back/symbol_export | |
FIXME: Span splitting | tools/rust-analyzer/crates/syntax-bridge/src/lib | |
FIXME: Split this off into the corresponding 4 rustc errors | tools/rust-analyzer/crates/hir/src/diagnostics | |
FIXME: Store the fact that a node has diagnostics in a bit in the dep graph somewhere | rustc_query_system/src/dep_graph/graph | |
FIXME: Store this in FunctionData flags? | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: Strictly speaking this may be incomplete if the normalized-to | rustc_next_trait_solver/src/solve/eval_ctxt/mod | |
FIXME: Struct/Enum/Unions Fields (there is currently no way to attach these) | rustc_incremental/src/persist/dirty_clean | |
FIXME: Substitute type vars in impl trait (`U` -> `i8`) | tools/rust-analyzer/crates/ide/src/signature_help | |
FIXME: Subsumed by trait `StructuralPartialEq`, cannot move to removed until a library | rustc_feature/src/unstable | |
FIXME: Suggest adding supertrait bounds if we have a `Self` type param | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME: Suggested fix results in infinite recursion | tools/clippy/tests/ui/use_self | |
FIXME: Support `confstr` in Miri | std/src/sys/pal/unix/os | |
FIXME: Support escaped double-quotes in strings | tools/compiletest/src/header | |
FIXME: Support extra trait imports | tools/rust-analyzer/crates/ide-db/src/imports/import_assets | |
FIXME: Support ftruncate64 for all FDs | tools/miri/src/shims/unix/fs | |
FIXME: Support general path types | tools/rust-analyzer/crates/ide/src/inlay_hints/lifetime | |
FIXME: Support macro def with repeat | tools/rustfmt/src/macros | |
FIXME: Support more fine-grained dead code removal on Solaris/illumos | rustc_codegen_ssa/src/back/link | |
FIXME: Suspicious | rustc_trait_selection/src/error_reporting/infer/suggest | |
FIXME: Switch to using `#[link]` attributes in the `libc` crate | rustc_codegen_ssa/src/back/linker | |
FIXME: THis should be a subtree no? | tools/rust-analyzer/crates/hir-expand/src/fixup tools/rust-analyzer/crates/hir-expand/src/fixup tools/rust-analyzer/crates/hir-expand/src/fixup tools/rust-analyzer/crates/hir-expand/src/fixup tools/rust-analyzer/crates/hir-expand/src/fixup | |
FIXME: Take the scope of the resolved path into account. e.g. if there are any paths that are | tools/rust-analyzer/crates/ide-ssr/src/search | |
FIXME: Technically this equate could be fallible | rustc_next_trait_solver/src/solve/assembly/structural_traits | |
FIXME: Technically we should look at the amount of available | rustc_target/src/callconv/mod | |
FIXME: Technically, the reason should be `DLL_PROCESS_DETACH` when the main thread exits | tools/miri/src/shims/tls | |
FIXME: Technically, we could just store a &'tcx str here without issue; however, the | rustc_lint/src/foreign_modules | |
FIXME: Temporarily retained so we can point users to `--no-capture` | tools/compiletest/src/lib | |
FIXME: Temporary fix for rust-lang/cargo/issues/3005 | bootstrap/src/core/builder/cargo | |
FIXME: Temporary workaround for handling aliased import | tools/rust-analyzer/crates/ide-completion/src/render | |
FIXME: The None case needs to encode the context crate id. We can encode that as the MSB of | tools/rust-analyzer/crates/span/src/hygiene | |
FIXME: The Rust compiler currently omits weakly function definitions (i.e | std/src/sys/thread_local/destructors/linux_like | |
FIXME: The `#[link]` attributes on `extern "C"` block marks those symbols declared in | unwind/src/libunwind | |
FIXME: The `issue_114682_5_extern_1` should be considered an ambiguous item | ui/imports/issue-114682-5 | |
FIXME: The actually-Unix implementation in process_unix.rs uses WSTOPSIG, WCOREDUMP et al | std/src/sys/pal/unix/process/process_fuchsia | |
FIXME: The base here should be the parent of the `.cargo/config` file, not the manifest | tools/rust-analyzer/crates/project-model/src/env | |
FIXME: The binding name value used above makes for problematic diagnostics | ui/pattern/bindings-after-at/borrowck-pat-ref-mut-twice | |
FIXME: The code below now prints | rustdoc/html/render/print_item | |
FIXME: The current code for niche-filling relies on variant indices | tools/rust-analyzer/crates/hir-ty/src/layout/adt | |
FIXME: The current diagnostic is misleading since it only talks about | rustc_ast_passes/src/ast_validation | |
FIXME: The error here actually comes from line 34. The | ui/rfcs/rfc-2528-type-changing-struct-update/lifetime-update | |
FIXME: The focus range should be set to the helper declaration | tools/rust-analyzer/crates/ide/src/navigation_target | |
FIXME: The following code looks fishy. See #132860 | rustc_errors/src/emitter | Open |
FIXME: The following limits should be reduced eventually | tools/tidy/src/ui_tests | |
FIXME: The full state vector can be quite long. It would be nice to split on commas | rustc_mir_dataflow/src/framework/graphviz | |
FIXME: The ide layer loses the calling info here so we get an ambiguous trait solve result | tools/rust-analyzer/crates/ide/src/signature_help | |
FIXME: The import is missing | tools/rust-analyzer/crates/ide-assists/src/handlers/bool_to_enum | |
FIXME: The leak sanitizer currently fails the tests, see #88132 | rustc_target/src/spec/targets/aarch64_apple_darwin rustc_target/src/spec/targets/arm64e_apple_darwin | Open |
FIXME: The length of data here is not guaranteed to fit in a u32 | rustc_codegen_ssa/src/back/metadata | |
FIXME: The lifetime is too complex to analyze. In order to avoid false positives, we do not | tools/clippy/tests/ui/significant_drop_in_scrutinee | |
FIXME: The pretty printer breaks by leaving whitespace here, +syntaxctxt is used to avoid that | tools/rust-analyzer/crates/hir-def/src/macro_expansion_tests/mbe | |
FIXME: The primary limitation of this approach is that the set of detached files needs to be fixed at the beginning | tools/rust-analyzer/crates/project-model/src/workspace | |
FIXME: The riscv64gc-gnu and armhf-gnu build containers run as root | run-make/rustdoc-io-error/rmake | |
FIXME: The riscv64gc-gnu build container runs as root, and can always write | run-make/inaccessible-temp-dir/rmake | |
FIXME: The span of the `-` token is lost when | rustc_expand/src/proc_macro_server | |
FIXME: The text above describes how this should work. Currently it | rustc_expand/src/base | |
FIXME: The use of PATH_MAX is generally not encouraged, but it | std/src/sys/pal/unix/fs | |
FIXME: Their should be a better way to determine if an item is local, rather than relying on `LOCAL_CRATE_ID` | tools/jsondoclint/src/validator | |
FIXME: There has to be a better way to do this | tools/rust-analyzer/crates/hir-def/src/nameres/collector | |
FIXME: There is a bug in Clang 18 when building for ARM64 | bootstrap/src/core/builder/cargo | |
FIXME: There is a minor inconsistency here. For lines that start with ##, we | rustdoc/html/markdown | |
FIXME: There is currently a lot of redundancy between | rustc_mir_transform/src/coverage/mappings | |
FIXME: There should be some proper form of mapping between item tree field ids and hir field ids | tools/rust-analyzer/crates/hir-def/src/attr | |
FIXME: There's no type corresponding to a shallow borrow, so use `&` as an approximation | stable_mir/src/mir/body | |
FIXME: These `eat_*` calls should be converted to `parse_or` to avoid | tools/rustfmt/src/parse/macros/lazy_static | |
FIXME: These empty unreachable blocks are *mostly* a waste. They are occasionally | rustc_codegen_ssa/src/mir/mod | |
FIXME: These methods should not take an Into<MultiSpan> -- instead, callers should need to | rustc_lint/src/context | |
FIXME: These should be a valtree | stable_mir/src/ty | |
FIXME: These should be consistent | ui/rust-2018/edition-lint-inter-outlives/edition-lint-infer-outlives-macro | |
FIXME: These should have suggestions | ui/suggestions/dont-suggest-ref/simple | |
FIXME: These should ideally not exist as a self type. It would be nice for | rustc_middle/src/ty/context | |
FIXME: These should not attempt to link to docs.rs! | tools/rust-analyzer/crates/ide/src/doc_links | |
FIXME: These should really be printed as part of each outgoing edge rather than the node | rustc_mir_dataflow/src/framework/graphviz | |
FIXME: These test-cases illustrate confusing results of nested functions | coverage/no_cov_crate | |
FIXME: These tests are all excellent candidates for AFL fuzz testing | core/tests/net/parser | |
FIXME: These things don't *really* have 'static lifetime | rustc_middle/src/ty/util | |
FIXME: ThinArc<[Subtree]> | tools/rust-analyzer/crates/hir-expand/src/fixup | |
FIXME: This *could* be considered a read of `!`, but we're not that sophisticated | ui/never_type/diverging-place-match | |
FIXME: This actually generates tighter assembly, and is a classic trick | rustc_codegen_ssa/src/mir/rvalue | |
FIXME: This actually should destructure the `Result` we get from transmutability and | rustc_trait_selection/src/solve/delegate | |
FIXME: This adds as many module scopes as there are blocks, but resolving in each | tools/rust-analyzer/crates/hir-def/src/resolver tools/rust-analyzer/crates/hir-def/src/resolver | |
FIXME: This also unifies the previous hidden type with the expected | rustc_next_trait_solver/src/solve/normalizes_to/opaque_types | |
FIXME: This assert may fire if public glob is later shadowed by a private | rustc_resolve/src/imports | |
FIXME: This assumes that elaborated `Sized` bounds come first (which does hold at the | rustc_hir_analysis/src/check/check | |
FIXME: This assumes the crate name is always equal to its display name when it | tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: This branch should eventually be removed | rustc_resolve/src/build_reduced_graph | |
FIXME: This caching may be incorrect in case of multiple `macro_rules` | rustc_resolve/src/late | |
FIXME: This can be `true` once we always use `tcx.is_diagnostic_item` | rustc_feature/src/builtin_attrs tools/rust-analyzer/crates/hir-expand/src/inert_attr_macro | |
FIXME: This can be a false positive if the correct field is reachable through deeper | tools/clippy/clippy_lints/src/functions/misnamed_getters | |
FIXME: This can be de improved | tools/rust-analyzer/crates/ide/src/navigation_target | |
FIXME: This can be simplified a lot by exposing hir-ty's utils.rs::Generics helper | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: This can be simplified to `Copy` | mir-opt/gvn_copy_aggregate mir-opt/gvn_copy_aggregate | |
FIXME: This can become `Box<[Attr]>` if internals.rust-lang.org/t/layout-of-dst-box/21728?u=chrefr is accepted | tools/rust-analyzer/crates/hir-expand/src/attrs | |
FIXME: This can definitely not be so spaghettified | rustc_sanitizers/src/cfi/typeid/itanium_cxx_abi/encode | |
FIXME: This can miss some hints that require the parent of the range to calculate | tools/rust-analyzer/crates/ide/src/inlay_hints tools/rust-analyzer/crates/ide/src/inlay_hints | |
FIXME: This can probably be re-implemented via the HIR? | tools/rust-analyzer/crates/ide-db/src/syntax_helpers/format_string | |
FIXME: This can use the `ide_db::rename_reference` (or def.rename) method once we can | tools/rust-analyzer/crates/ide/src/rename | |
FIXME: This case overlaps with another one worth handling | rustc_hir_typeck/src/fn_ctxt/adjust_fulfillment_errors | |
FIXME: This causes false negatives. We can't get the `NodeId` from | tools/clippy/clippy_utils/src/usage | |
FIXME: This causes us to parse, generally this is the wrong approach for resolving a | tools/rust-analyzer/crates/hir/src/source_analyzer | |
FIXME: This check can be removed once we use speculative database forking for completions | tools/rust-analyzer/crates/ide-completion/src/context/analysis | |
FIXME: This check requires that the (arbitrary) value of undefined bytes | rustc_codegen_gcc/src/consts | |
FIXME: This checks types without possible coercions which some completions might want to do | tools/rust-analyzer/crates/ide-completion/src/render | |
FIXME: This code cannot yet handle no_std test cases yet | rustdoc/doctest/make | |
FIXME: This code is otherwise somewhat general, and could easily be adapted | rustc_borrowck/src/diagnostics/opaque_suggestions | |
FIXME: This code is quite ugly and could be improved. Small issue: DefId | rustdoc/html/render/print_item | |
FIXME: This codepath is reachable under `associated_const_equality` and in the | rustc_trait_selection/src/traits/mod | |
FIXME: This comment refers to the only callsite of this method | rustc_errors/src/emitter | |
FIXME: This could be a `Sorts` if the term is a type | rustc_trait_selection/src/solve/fulfill | |
FIXME: This could be made more robust, possibly with a variant of `rustc_layout` | ui/layout/trivial-bounds-sized | |
FIXME: This could handle more exotic cases like mutability mismatches too! | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME: This could maybe benefit from `.may_recover()`? | rustc_parse/src/parser/item rustc_parse/src/parser/item | |
FIXME: This could perhaps return a `WithDepNode` to ensure that the | rustc_query_system/src/dep_graph/graph | |
FIXME: This could use a real folder, I guess | rustc_ty_utils/src/implied_bounds | |
FIXME: This could/should be extended to suggest `as_mut` and `as_deref_mut` | rustc_hir_typeck/src/fn_ctxt/suggestions | |
FIXME: This currently has an intentional no-op implementation | std/src/os/windows/process | |
FIXME: This depends on the set of all impls for the trait. That is | rustc_middle/src/ty/trait_def | |
FIXME: This does not handle `Self` on trait definitions, which we should resolve to the | tools/rust-analyzer/crates/hir/src/attrs | |
FIXME: This does not handle macros! | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME: This does not handle subtyping correctly, we could | rustc_infer/src/infer/relate/generalize | |
FIXME: This doesn't check for malformed libcore that defines, e.g | rustc_ty_utils/src/instance | |
FIXME: This doesn't display a useful Rust 2024 suggestion :( | ui/impl-trait/precise-capturing/migration-note | Closed |
FIXME: This doesn't get an around-the-end range today, sadly | mir-opt/building/enum_cast | |
FIXME: This doesn't include impls like `impl Default for String` | rustc_resolve/src/late/diagnostics | |
FIXME: This doesn't properly validate anything and just ignores the data if it's invalid | rustc_target/src/spec/json | |
FIXME: This doesn't work without the trailing `a` as `0.` is a float | tools/rust-analyzer/crates/ide-completion/src/completions/dot | |
FIXME: This don't work when crate-type is specified by attribute | ui/proc-macro/crt-static | |
FIXME: This drops arg causing it to potentially not be resolved/type checked | tools/rust-analyzer/crates/hir-def/src/body/lower | |
FIXME: This error could be more descriptive, especially if the error_predicate | rustc_hir_analysis/src/coherence/builtin | |
FIXME: This error is bogus, but it arises because we try to validate | ui/generic-associated-types/issue-91139 | |
FIXME: This error message isn't great, but it doesn't show | rustc_borrowck/src/diagnostics/bound_region_errors | |
FIXME: This error message isn't great, but it doesn't show up in the existing UI tests | rustc_borrowck/src/diagnostics/bound_region_errors rustc_borrowck/src/diagnostics/bound_region_errors | |
FIXME: This error message isn't useful, since we're just | rustc_borrowck/src/diagnostics/mutability_errors | |
FIXME: This features waits for DWARF implicit pointers in LLVM | mir-opt/reference_prop mir-opt/reference_prop | |
FIXME: This feels like a bad heuristic for macros | tools/rust-analyzer/crates/ide-assists/src/handlers/inline_local_variable | |
FIXME: This function is bad. It will produce a dangling `Missing` expr which wastes memory. Currently | tools/rust-analyzer/crates/hir-def/src/body/lower | |
FIXME: This function seems legitimately unused | std/src/sys/pal/unix/pipe std/src/sys/pal/unix/pipe | |
FIXME: This function should be eventually removed from bootstrap | bootstrap/src/utils/exec | |
FIXME: This function should be private in module. It is currently only used in the consteval, since we need | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME: This generates enum kinds? | tools/rust-analyzer/xtask/src/codegen/grammar | |
FIXME: This has the same issue as #108544, but since this isn't breaking | rustc_hir_analysis/src/check/compare_impl_item | Closed |
FIXME: This heuristic is brittle and with the right macro may select completely unrelated nodes? | tools/rust-analyzer/crates/hir-expand/src/files | |
FIXME: This implementation is "wrong", but changing it would be a breaking change | alloc/src/collections/btree/map | |
FIXME: This is a bit too conservative, since it ignores parens already written in AST | rustc_trait_selection/src/errors | |
FIXME: This is a bug. The macro should not expand, but it's | tools/rust-analyzer/crates/ide-assists/src/handlers/inline_macro | |
FIXME: This is a complete copy of `cargo/src/cargo/util/read2.rs` | tools/compiletest/src/read2 | |
FIXME: This is a false-positive, the file is actually linked in via | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/macro_error | |
FIXME: This is a hack for the vscode extension to notice whether there is an autofix or not before having to resolve diagnostics | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/unlinked_file | |
FIXME: This is a mess that needs some untangling work | tools/rust-analyzer/crates/rust-analyzer/src/reload | |
FIXME: This is a quick hack to make the rustc binary able to locate | rustc_target/src/lib | |
FIXME: This is a subset of `parse_external_mod` without actual parsing | rustc_expand/src/module | |
FIXME: This is a weird function | tools/rust-analyzer/crates/ide-db/src/helpers | |
FIXME: This is a workaround, see the comment on `interpret_mir` | tools/rust-analyzer/crates/hir-ty/src/mir/eval | |
FIXME: This is accidentally quadratic | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: This is actually wrong with multiple principals in regards to symbol mangling | rustc_hir_analysis/src/hir_ty_lowering/dyn_compatibility | |
FIXME: This is an infinitesimally small portion of the types you can | rustc_codegen_llvm/src/context | |
FIXME: This is being interned, subtrees can vary quickly differing just slightly causing | tools/rust-analyzer/crates/hir-expand/src/lib | |
FIXME: This is currently disabled on *BSD | std/src/os/unix/net/ancillary | |
FIXME: This is currently only used for collecting lang items, but should be used instead of | rustc_middle/src/query/mod | |
FIXME: This is hack. We shouldn't really build `PathSegment` directly | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME: This is here since some queries take it as input that are used | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: This is incorrect to do, delimiters can never be puncts. See #18244 | tools/rust-analyzer/crates/tt/src/lib | Closed |
FIXME: This is just a temporary fix for not handling import aliases like | tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: This is not caught | tools/clippy/tests/ui/unnecessary_safety_comment | |
FIXME: This is not general enough to make the warning lint completely override | rustc_session/src/session | |
FIXME: This is not quite correct, but good enough(tm) for the sorting heuristic | tools/rust-analyzer/crates/ide-assists/src/handlers/extract_variable | |
FIXME: This is not really the nicest way to get `InferenceVar`s. Can we get them | tools/rust-analyzer/crates/hir-ty/src/infer/unify | |
FIXME: This is not right, even in the old solver | rustc_hir_typeck/src/expectation | |
FIXME: This is not totally structural, which probably should be fixed | rustc_type_ir/src/relate | |
FIXME: This is not used now but it should be | tools/rust-analyzer/crates/hir-ty/src/lower/diagnostics | |
FIXME: This is only a guess and it doesn't work correctly for `macro_rules!` | rustc_resolve/src/lib tools/rust-analyzer/crates/hir-expand/src/mod_path | |
FIXME: This is only exposed because we need to use it in `analyse.rs` | rustc_next_trait_solver/src/solve/eval_ctxt/mod | |
FIXME: This is only necessary as `<Self as Trait>::Assoc: ItemBound` | rustc_next_trait_solver/src/solve/assembly/structural_traits | |
FIXME: This is only necessary for `fn take_and_reset_data` and | rustc_infer/src/infer/region_constraints/mod | |
FIXME: This is only used in collection, we should move the relevant parts of it out of ItemScope | tools/rust-analyzer/crates/hir-def/src/item_scope | |
FIXME: This is overly conservative around generic parameters: `is_freeze()` will always | rustc_mir_transform/src/deduce_param_attrs | |
FIXME: This is overly slow if there are very many bufs and none contain | std/src/io/buffered/linewritershim | |
FIXME: This is problematic because just a number is not a valid identifier | rustc_codegen_llvm/src/debuginfo/metadata/enums/native | |
FIXME: This is problematic, we might want to synthesize a dummy | tools/rust-analyzer/crates/hir-def/src/hir/format_args | |
FIXME: This is required for helper attributes used by proc-macros, as those do not map down | tools/rust-analyzer/crates/ide/src/syntax_highlighting/highlight | |
FIXME: This is some serious pessimization intended to workaround deficiencies | rustc_privacy/src/lib | |
FIXME: This is suboptimal, we want to get `use std::fmt::{self, Result}` | tools/rust-analyzer/crates/ide-db/src/imports/insert_use/tests | |
FIXME: This is the wrong expansion, see FIXME on `builtin_fn_macro::use_panic_2021` | tools/rust-analyzer/crates/hir-def/src/macro_expansion_tests/builtin_fn_macro | |
FIXME: This is tough because we don't support the exec syscalls | std/src/sys/pal/unix/process/process_fuchsia | |
FIXME: This is using the host architecture exe suffix, not target! | tools/compiletest/src/runtest | |
FIXME: This is workaround. Ideally, const generics should have a separate body (issue #7434), but now | tools/rust-analyzer/crates/hir-ty/src/mir/eval | Closed |
FIXME: This is wrong | std/src/sys/pal/uefi/process std/src/sys/pal/uefi/process std/src/sys/pal/uefi/process | |
FIXME: This is wrong, this should be `FixedPoint[T: covariant, U: covariant, V: covariant]` | tools/rust-analyzer/crates/hir-ty/src/variance | |
FIXME: This is wrong, this should not mark the last as active | tools/rust-analyzer/crates/ide/src/signature_help | |
FIXME: This isn't quite right wrt to inner attributes | tools/rust-analyzer/crates/hir/src/semantics | |
FIXME: This isn't really correct wrt. escaping, but that's what rustc does and anyway | tools/rust-analyzer/crates/mbe/src/expander/transcriber | |
FIXME: This isn't true due to `super::*` imports? | tools/rust-analyzer/crates/ide-assists/src/handlers/replace_qualified_name_with_use | |
FIXME: This iterates the entire file which is a rather expensive operation | tools/rust-analyzer/crates/ide-diagnostics/src/lib | |
FIXME: This lint uses some custom span combination logic | ui/lint/wide_pointer_comparisons | |
FIXME: This logic needs some more care w.r.t handling of conflicts | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME: This looks fishy. See #132860 | rustc_errors/src/emitter | Open |
FIXME: This match is a bit ugly, it might be nice to change the inspect | rustc_next_trait_solver/src/solve/eval_ctxt/mod | |
FIXME: This may be detrimental to diagnostics, as we resolve the early-bound vars | rustc_ty_utils/src/assoc | |
FIXME: This may have issues when the args contain aliases | rustc_next_trait_solver/src/solve/normalizes_to/opaque_types | |
FIXME: This may recurse infinitely, but I can't seem to trigger it without | rustc_next_trait_solver/src/solve/assembly/mod | |
FIXME: This method currently doesn't apply fallback to unconstrained general type variables | tools/rust-analyzer/crates/hir-ty/src/infer/unify | |
FIXME: This method should be removed (every error should have an associated error code) | rustc_errors/src/lib | |
FIXME: This might create inconsistent completions where we show a ref match in macro inputs | tools/rust-analyzer/crates/ide-completion/src/render | |
FIXME: This module shouldn't be public | rustc_hir_analysis/src/lib | |
FIXME: This needs an audit for correctness and completeness | rustc_target/src/callconv/sparc64 | |
FIXME: This needs tests to ensure that the arguments are properly | std/src/sys/pal/windows/args | |
FIXME: This needs to be made resilient for `AliasTerm`s | rustdoc/clean/mod | |
FIXME: This needs to be made resilient for `AliasTerm`s that | rustdoc/clean/mod rustdoc/clean/mod rustdoc/clean/mod | |
FIXME: This needs to be more precise. Reference category makes sense only | tools/rust-analyzer/crates/ide/src/highlight_related | |
FIXME: This needs to go once we have hygiene | tools/rust-analyzer/crates/hir-expand/src/name | |
FIXME: This never check is odd, but required with out we do inference right now | tools/rust-analyzer/crates/hir-ty/src/infer/pat | |
FIXME: This only handles a single level of cfg_attr nesting | tools/rust-analyzer/crates/hir-expand/src/attrs | |
FIXME: This only is here because `wf::obligations` is in `rustc_trait_selection`! | rustc_next_trait_solver/src/delegate | |
FIXME: This operates on the syntax tree and will produce incorrect results when | tools/rust-analyzer/crates/ide-completion/src/context/analysis | |
FIXME: This ought to be a diagnostic lint | tools/rust-analyzer/crates/ide-assists/src/handlers/unnecessary_async | |
FIXME: This parses `unsafe()` not as unsafe attribute syntax in `MetaItem` | rustc_ast/src/attr/mod | |
FIXME: This parses! | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: This parses... We could probably store relative ranges for the children things | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: This passes through `-/*spacer*/0` verbatim | rustc_metadata/src/rmeta/encoder | |
FIXME: This really should be taking scoping, etc into account | rustc_hir_typeck/src/method/suggest | |
FIXME: This recovery should be tested better | rustc_parse/src/parser/item | |
FIXME: This relies on untyped syntax tree and casts to much. It should be | tools/rust-analyzer/crates/ide-assists/src/handlers/convert_to_guarded_return | |
FIXME: This requires the optimized MIR in the case of coroutines | rustc_middle/src/ty/sty rustc_middle/src/ty/sty | |
FIXME: This seems a bit wasteful that if `LowerCtx` will initialize the span map we won't benefit | tools/rust-analyzer/crates/hir-def/src/item_tree/lower | |
FIXME: This setup is temporary until we figure out how to improve this situation | tools/compiletest/src/header tools/jsondocck/src/main | |
FIXME: This should `print_sugared`, but also needs to integrate projection bounds | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME: This should also emit an error | ui/inference/need_type_info/type-alias | |
FIXME: This should also get checked to generate a gather instruction for avx2 | assembly/simd-intrinsic-gather | |
FIXME: This should also warn because it creates the public path `foo::FooIter` | tools/clippy/tests/ui/module_name_repetitions | |
FIXME: This should be Ast<ConstArg> | tools/rust-analyzer/crates/hir-def/src/hir/type_ref | |
FIXME: This should be a `span_suggestion` instead of `help` | rustc_hir_typeck/src/method/probe | |
FIXME: This should be a local | tools/rust-analyzer/crates/rust-analyzer/src/cli/scip tools/rust-analyzer/crates/rust-analyzer/src/cli/scip tools/rust-analyzer/crates/rust-analyzer/src/cli/scip tools/rust-analyzer/crates/rust-analyzer/src/cli/scip | |
FIXME: This should be available on Linux with all `target_env` | std/src/sys/pal/unix/fs | |
FIXME: This should be doable in theory | tools/rust-analyzer/crates/ide-db/src/rename | |
FIXME: This should be emitted in body lowering | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME: This should be folded into ConstEvalError? | tools/rust-analyzer/crates/hir-ty/src/mir/eval | |
FIXME: This should be handled the same way as for HTML output | rustdoc/passes/stripper | |
FIXME: This should be merged with the actual `TypeChecker` | rustc_borrowck/src/type_check/mod | |
FIXME: This should be replaced by a more complete and generic | rustc_codegen_ssa/src/back/linker rustc_target/src/spec/base/illumos | |
FIXME: This should be updated for the exception machinery changes from #67502 | rustc_target/src/spec/base/windows_uwp_gnu | Closed |
FIXME: This should check all import infos, not just the first | tools/rust-analyzer/crates/hir-def/src/import_map | |
FIXME: This should check for dupes and non-params first, then infer vars | rustc_next_trait_solver/src/solve/normalizes_to/opaque_types | |
FIXME: This should filter out all completions that do not have the type `Foo` | tools/rust-analyzer/crates/ide-completion/src/tests/record | |
FIXME: This should get removed once higher ranked region obligations | rustc_borrowck/src/type_check/constraint_conversion | |
FIXME: This should ideally use a fully qualified path | ui/impl-trait/diagnostics/fully-qualified-path-impl-trait | |
FIXME: This should just be an if-let-chain, but those are unstable | bootstrap/src/core/build_steps/tool | |
FIXME: This should make use of scope_def like completions so we get all the other goodies | tools/rust-analyzer/crates/ide-completion/src/completions/record | |
FIXME: This should make use of the breakable CoerceMany | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: This should not be a thing | tools/rust-analyzer/crates/hir-def/src/lib | |
FIXME: This should probably also suggest completions for types, at least those that have | tools/rust-analyzer/crates/ide-completion/src/tests/type_pos | |
FIXME: This should probably depend on the number of the results (specifically, the number of false results) | tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: This should probably to conditionally remapped under | rustc_metadata/src/rmeta/encoder | |
FIXME: This should return EBADF, but there's no nice way to do that as there's no | tools/miri/src/shims/unix/unnamed_socket tools/miri/src/shims/unix/unnamed_socket tools/miri/src/shims/unix/unnamed_socket tools/miri/src/shims/unix/unnamed_socket | |
FIXME: This should return a different type, signaling it was filtered? | tools/rust-analyzer/crates/hir-expand/src/attrs | |
FIXME: This should specifically look for a glob import somehow and record that here | tools/rust-analyzer/crates/hir-def/src/nameres/collector | |
FIXME: This should support byte and c strings as well | tools/rust-analyzer/crates/ide-assists/src/handlers/raw_string | |
FIXME: This should take a `PolyExistentialTraitRef`, since we don't care | rustc_trait_selection/src/traits/vtable | |
FIXME: This should trigger | ui/privacy/pub-priv-dep/diamond_deps ui/privacy/pub-priv-dep/pub-priv1 ui/privacy/pub-priv-dep/pub-priv1 ui/privacy/pub-priv-dep/pub-priv1 ui/privacy/pub-priv-dep/pub-priv1 ui/privacy/pub-priv-dep/pub-priv1 ui/privacy/pub-priv-dep/pub-priv1 ui/privacy/pub-priv-dep/pub-priv1 ui/privacy/pub-priv-dep/pub-priv1 ui/privacy/pub-priv-dep/reexport_from_priv ui/privacy/pub-priv-dep/shared_both_private ui/privacy/pub-priv-dep/shared_both_private ui/privacy/pub-priv-dep/shared_indirect | |
FIXME: This should trigger error | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/typed_hole | |
FIXME: This should work too | codegen/option-niche-eq | |
FIXME: This shouldn't be a diagnostic | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/inactive_code | |
FIXME: This shouldn't be accepted as path actually | tools/rust-analyzer/crates/parser/src/tests/prefix_entries | |
FIXME: This shouldn't be completed here | tools/rust-analyzer/crates/ide-completion/src/tests/item | |
FIXME: This shouldn't be here, we can derive this from `invoc_attr_index` | tools/rust-analyzer/crates/hir-expand/src/lib | |
FIXME: This shouldn't consume the semicolon | tools/rust-analyzer/crates/parser/src/tests/prefix_entries | |
FIXME: This shouldn't return numerical/float | rustc_middle/src/ty/generic_args | |
FIXME: This still doesn't count, e.g., elided lifetimes and APITs | rustc_passes/src/lang_items | |
FIXME: This stops the suggestion in some cases where it should be emitted | rustc_borrowck/src/diagnostics/conflict_errors | |
FIXME: This test isn't comprehensive and isn't covering all possible combinations | run-make/compressed-debuginfo/rmake | |
FIXME: This test represents current misbehavior | tools/rust-analyzer/crates/rust-analyzer/src/cli/scip tools/rust-analyzer/crates/rust-analyzer/src/cli/scip tools/rust-analyzer/crates/rust-analyzer/src/cli/scip tools/rust-analyzer/crates/rust-analyzer/src/cli/scip | |
FIXME: This test should pass as the first two fields add implied bounds that | ui/regions/higher-ranked-implied | |
FIXME: This test was broken by the derefer change | mir-opt/early_otherwise_branch_68867 | |
FIXME: This text manipulation seems risky | tools/rust-analyzer/crates/ide-assists/src/handlers/convert_closure_to_fn | |
FIXME: This unwrap should never panic because we check that it won't when creating | rustc_metadata/src/rmeta/decoder | |
FIXME: This uses an empty `TypingEnv` even though | rustc_const_eval/src/const_eval/mod | |
FIXME: This whole logic is questionable, whether modifiers are | rustc_metadata/src/native_libs | |
FIXME: This whole thing needs a refactor. Each derive requires its special values, and the result is a mess | tools/rust-analyzer/crates/hir-expand/src/builtin/derive_macro | |
FIXME: This will assume expr macros are not inside match, we need to somehow go to the "parent" of the root node | tools/rust-analyzer/crates/ide-completion/src/context | |
FIXME: This will be wrong if we ever add inherent impls | rustdoc/clean/types | |
FIXME: This will make us not emit the help even for declarative | rustc_parse/src/parser/item | |
FIXME: This won't work if the type is given an alias through `use`, should we | tools/clippy/clippy_lints/src/casts/unnecessary_cast | |
FIXME: Too many codegen messages have periods right now | tools/tidy/src/fluent_period | |
FIXME: Transmuting formatter in new and indirectly branching to/calling | core/src/fmt/rt | |
FIXME: Try running this logic earlier, to allocate name bindings for | rustc_resolve/src/ident | |
FIXME: Try to put the metavariable span into `SpanData` instead of a side table (#118517) | rustc_expand/src/mbe/transcribe | Closed |
FIXME: Turn this into a query, it can be quite slow | tools/rust-analyzer/crates/hir-ty/src/inhabitedness tools/rust-analyzer/crates/hir-ty/src/inhabitedness | |
FIXME: Turn this into a structured, translateable & more actionable suggestion | rustc_hir_analysis/src/hir_ty_lowering/mod | |
FIXME: TypeFlags::HAS_CT_PROJECTION is not implemented in chalk, so TypeFlags::HAS_PROJECTION only | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME: Uncomment the `AsMut<[T]>` impl when this gets stabilized | core/src/slice/iter | |
FIXME: Uncomment the `prepare` command below once vendoring is implemented | bootstrap/src/core/build_steps/test bootstrap/src/core/build_steps/test | |
FIXME: Unevaluated constants are also not rigid, so the current | rustc_infer/src/infer/relate/generalize | |
FIXME: Unions aren't yet supported by this validator | tools/rust-analyzer/crates/hir-ty/src/diagnostics/decl_check | |
FIXME: Uplift the leak check into this crate | rustc_next_trait_solver/src/delegate | |
FIXME: Use CreateExportList utility to create export list | rustc_codegen_ssa/src/back/linker | |
FIXME: Use `Path::from_src` | tools/rust-analyzer/crates/hir-def/src/generics tools/rust-analyzer/crates/hir-def/src/hir/type_ref tools/rust-analyzer/crates/hir-def/src/hir/type_ref | |
FIXME: Use `mir::visit::Visitor` for the `in_*` functions if/when it supports early return | rustc_const_eval/src/check_consts/qualifs | |
FIXME: Use `tcx.hir().par_body_owners()` when we implement creating `DefId`s | rustc_hir_analysis/src/check_unused | |
FIXME: Use `trunc nuw` once that's available | rustc_codegen_ssa/src/base | |
FIXME: Use an 'if let' guard once they are implemented | rustc_builtin_macros/src/test | |
FIXME: Use constants once rust-lang/libc/pull/3941 backported to the 0.2 branch | tools/miri/src/shims/unix/android/thread | |
FIXME: Use correct span? | tools/rustfmt/src/imports | |
FIXME: Use declaration from libc once <rust-lang/libc/pull/3944> lands | tools/miri/tests/pass-dep/libc/libc-random | |
FIXME: Use resolved `param.ty` once we no longer discard lifetimes | tools/rust-analyzer/crates/hir/src/display | |
FIXME: Use the toolchains channel instead of nightly | tools/rust-analyzer/crates/ide/src/doc_links | |
FIXME: Used only from queries and can use query cache | rustc_metadata/src/rmeta/decoder | |
FIXME: Using host floats, to work around rust-lang/rustc_apfloat/issues/11 | tools/miri/src/intrinsics/mod tools/miri/src/intrinsics/mod tools/miri/src/intrinsics/mod tools/miri/src/intrinsics/mod | |
FIXME: Visit spans inside all this currently ignored stuff | rustc_ast/src/mut_visit | |
FIXME: We are currently creating two branches here in order to maintain | rustc_hir_typeck/src/expr | |
FIXME: We are currently missing primitive type methods and trait implementations for external | ui-fulldeps/stable-mir/check_crate_defs | |
FIXME: We are hitting the database here, if we are unlucky this call might block momentarily | tools/rust-analyzer/crates/ide/src/typing | |
FIXME: We are just dropping the binders in lifetime_defs on the floor here | rustc_parse/src/parser/generics | |
FIXME: We are re-getting the allocation each time around the loop | tools/miri/src/helpers tools/miri/src/helpers | |
FIXME: We can also possibly add an optimization here to detect | std/src/sys/alloc/wasm | |
FIXME: We can compress this with an enum for this and `label`/`block` if memory usage matters | tools/rust-analyzer/crates/hir-def/src/body/scope | |
FIXME: We can make this configurable, and if the user uses `cargo clippy` on flycheck, we can | tools/rust-analyzer/crates/ide-diagnostics/src/lib | |
FIXME: We can merge into exactly one assignment statement | mir-opt/pre-codegen/clone_as_copy | |
FIXME: We can probably get rid of the extra copy here if we | std/src/sys/pal/zkvm/args std/src/sys/pal/zkvm/os | |
FIXME: We can randomize the order of unblocking | tools/miri/src/shims/unix/linux_like/eventfd tools/miri/src/shims/unix/linux_like/eventfd tools/miri/src/shims/unix/unnamed_socket tools/miri/src/shims/unix/unnamed_socket | |
FIXME: We can randomly pick a thread to unblock | tools/miri/src/shims/unix/linux_like/epoll | |
FIXME: We can't identify variables in a subdiagnostic | rustc_macros/src/diagnostics/diagnostic | |
FIXME: We check the number of rows because in some cases, like in | rustc_errors/src/emitter | |
FIXME: We could avoid some redundant checks here. For newtypes wrapping | rustc_const_eval/src/interpret/validity | |
FIXME: We could check that the call's *parent* takes `&mut val` to make the | rustc_borrowck/src/diagnostics/conflict_errors | |
FIXME: We could do normalization here, but is it really worth it? | rustc_hir_analysis/src/coherence/builtin | |
FIXME: We could have multiple applicable names here, but we currently only return the first | tools/rust-analyzer/crates/hir-def/src/find_path | |
FIXME: We could perhaps add a `skip: usize` to `debug_assert_args_compatible` | rustc_middle/src/ty/context | |
FIXME: We could probably actually just unify this further | rustc_hir_typeck/src/closure | |
FIXME: We could probably compute the LUB if there is one | rustc_borrowck/src/region_infer/opaque_types | |
FIXME: We could probably do way better attribute validation here | rustc_hir_analysis/src/collect | |
FIXME: We could report a structured suggestion if we had | rustc_middle/src/values | |
FIXME: We could use the assumed_wf_types from both impls, I think | rustc_trait_selection/src/traits/coherence | |
FIXME: We currently lose spans here (see issue #43081) | ui/proc-macro/issue-75930-derive-cfg | Closed |
FIXME: We currently return region constraints referring to | rustc_next_trait_solver/src/canonicalizer | |
FIXME: We currently use a pointer load instead of `transmute_copy` because `repr(simd)` | portable-simd/crates/core_simd/src/vector | |
FIXME: We currently use a pointer store instead of `transmute_copy` because `repr(simd)` | portable-simd/crates/core_simd/src/vector | |
FIXME: We deal with that one separately for now | rustc_trait_selection/src/error_reporting/infer/need_type_info | |
FIXME: We discard parse errors here | tools/rust-analyzer/crates/hir-expand/src/eager | |
FIXME: We do not show substitutions for parts of path, because this is really complex | tools/rust-analyzer/crates/hir/src/source_analyzer | |
FIXME: We do this because `xtask tidy` will not allow us to have trailing whitespace in the expect string | tools/rust-analyzer/crates/syntax/src/syntax_editor | |
FIXME: We don't actually reads for ZSTs | rustc_hir_typeck/src/expr_use_visitor | |
FIXME: We don't correctly check `cfg`s for now, so if it's more complex than just a one | tools/clippy/clippy_lints/src/attrs/duplicated_attributes | |
FIXME: We don't handle GATs yet | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: We don't need these, since these are the type's own WF obligations | rustc_next_trait_solver/src/solve/normalizes_to/mod rustc_next_trait_solver/src/solve/normalizes_to/mod | |
FIXME: We don't record the resolutions for this anywhere atm | tools/rust-analyzer/crates/ide-db/src/active_parameter | |
FIXME: We explicitly don't check that the types inferred during HIR | rustc_hir_analysis/src/collect/type_of/opaque | |
FIXME: We handle closure as a special case, since chalk consider every closure as copy. We | tools/rust-analyzer/crates/hir-ty/src/infer/closure | |
FIXME: We ignore the expected term of `NormalizesTo` goals | rustc_trait_selection/src/solve/inspect/analyse | |
FIXME: We ignore the first line of SVG files | tools/compiletest/src/runtest | |
FIXME: We just pick the first string literal that has the same text as the doc attribute | tools/rust-analyzer/crates/ide/src/syntax_highlighting/inject | |
FIXME: We make sure that this is a normal top-level binding | rustc_borrowck/src/diagnostics/conflict_errors | |
FIXME: We manually derive `Lift` because the `derive(Lift_Generic)` doesn't | rustc_type_ir/src/binder rustc_type_ir/src/predicate | |
FIXME: We match by text. This is both hacky and incorrect (people can, and do, create | tools/rust-analyzer/crates/hir/src/semantics | |
FIXME: We may want to elaborate here, though I assume this will be exceedingly rare | rustc_hir_typeck/src/closure | |
FIXME: We may want to include a whole `AssistConfig` here | tools/rust-analyzer/crates/ide-diagnostics/src/lib | |
FIXME: We maybe could skip this, if we handle the indeterminate imports in `resolve_imports` | tools/rust-analyzer/crates/hir-def/src/nameres/collector | |
FIXME: We might want to consider removing RUSTC_REAL and setting RUSTC directly? | bootstrap/src/bin/rustc | |
FIXME: We might want to have a `try_eval`-like function on `Unevaluated` | rustc_middle/src/mir/consts | |
FIXME: We might want to have two different versions of `layout_of` | rustc_ty_utils/src/layout | |
FIXME: We need to call `f` for all of them as well though! | tools/rust-analyzer/crates/hir/src/semantics | |
FIXME: We need to figure out the edition of the file here, but that means hitting the | tools/rust-analyzer/crates/ide/src/typing | |
FIXME: We need to get krate from the final callers of the hir display | tools/rust-analyzer/crates/hir-ty/src/display | |
FIXME: We need to split the tree properly here, but mutating the token trees | tools/rust-analyzer/crates/mbe/src/lib | |
FIXME: We only need to do *any* of this if we're considering a trait goal | rustc_next_trait_solver/src/solve/assembly/mod | |
FIXME: We only report a single error inside of eager expansions | tools/rust-analyzer/crates/hir-expand/src/eager | |
FIXME: We previously had an assert here that checked that recomputing | rustc_next_trait_solver/src/solve/eval_ctxt/mod | |
FIXME: We probably should store this signature inference output in a way | rustc_hir_typeck/src/closure | |
FIXME: We register a fake candidate when normalization fails so that | rustc_next_trait_solver/src/solve/assembly/mod | |
FIXME: We should actually implement these checks | tools/rust-analyzer/crates/hir-ty/src/mir/eval/shim | |
FIXME: We should add a leading pipe if the original arm has one | tools/rust-analyzer/crates/ide-assists/src/handlers/unmerge_match_arm | |
FIXME: We should be able to add some additional info here | rustc_trait_selection/src/error_reporting/infer/need_type_info | |
FIXME: We should be able to do something similar to | rustc_borrowck/src/diagnostics/region_name | |
FIXME: We should be able to turn these into SmolStr without having to allocate a String | tools/rust-analyzer/crates/ide-completion/src/completions/fn_param | |
FIXME: We should be never getting `None` here | tools/rust-analyzer/crates/hir-def/src/attr tools/rust-analyzer/crates/hir-def/src/attr tools/rust-analyzer/crates/hir-def/src/attr | |
FIXME: We should be smart and show a better diagnostic here | rustc_codegen_ssa/src/base | |
FIXME: We should be using a better heuristic for `use<>` | rustc_borrowck/src/diagnostics/opaque_suggestions | |
FIXME: We should do it unconditionally if the configuration is set to default to | tools/rust-analyzer/crates/ide-db/src/prime_caches | |
FIXME: We should emit a `<T: Debug>` generic argument for the generated function | tools/rust-analyzer/crates/ide-assists/src/handlers/extract_function | |
FIXME: We should fill out the call here, move the cursor and trigger signature help | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/unresolved_field | |
FIXME: We should fix up the position when retrying the cancelled request instead | tools/rust-analyzer/crates/rust-analyzer/src/handlers/request tools/rust-analyzer/crates/rust-analyzer/src/handlers/request | |
FIXME: We should handle async blocks like we handle closures | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: We should handle failure of layout better | tools/rust-analyzer/crates/hir-ty/src/consteval | |
FIXME: We should have tests for `is_ty_uninhabited_from` | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/mutability_errors | |
FIXME: We should ideally have a test that checks that we edit local roots and not library | tools/rust-analyzer/crates/ide-ssr/src/search | |
FIXME: We should investigate the perf implications of not uniquifying | rustc_next_trait_solver/src/canonicalizer | |
FIXME: We should just register the item bounds here, rather than equating | rustc_hir_analysis/src/check/check | |
FIXME: We should likely also do something about ZST return types, similar to above | rustc_target/src/callconv/x86_win64 | |
FIXME: We should move this check into a QueuedTask and do semantic resolution of | tools/rust-analyzer/crates/rust-analyzer/src/handlers/notification | |
FIXME: We should panic on duplicates instead, but includes currently cause us to report | tools/rust-analyzer/crates/ide-diagnostics/src/tests | |
FIXME: We should probably have a helper method to share code with the "Byte strings" | rustc_middle/src/ty/print/pretty | |
FIXME: We should probably just look into overflows here | rustc_trait_selection/src/solve/fulfill | |
FIXME: We should report both errors! | tools/rust-analyzer/crates/hir-expand/src/db | |
FIXME: We should stop passing `None` for the failure case | rustc_hir_typeck/src/method/mod | |
FIXME: We should store origins separately from the unification table | rustc_infer/src/infer/mod | |
FIXME: We should suggest making the fn `async`, but extracting | rustc_hir_analysis/src/check/compare_impl_item | |
FIXME: We should test more cases, but it currently doesn't work, since | tools/rust-analyzer/crates/hir-ty/src/tests/traits | |
FIXME: We should use this enum or something like it to get rid of the | rustc_span/src/lib | |
FIXME: We should verify that the parsed node is one of the many macro node variants we expect | tools/rust-analyzer/crates/hir-expand/src/db | |
FIXME: We shouldn't be relying on the infcx being tainted | rustc_hir_typeck/src/expr_use_visitor | |
FIXME: We shouldn't expose Mutability here (that is HIR types at all), its fine for now though | tools/rust-analyzer/crates/ide-completion/src/item | |
FIXME: We sometimes don't unset this when clearing `subcandidates` | rustc_mir_build/src/builder/matches/mod | |
FIXME: We sometimes suggest the same thing we already have, which is a | rustc_errors/src/emitter | |
FIXME: We trim the start because some inlay produces leading whitespace which is not properly supported by our annotation extraction | tools/rust-analyzer/crates/ide/src/inlay_hints | |
FIXME: We use a different type than the existing canonical queries. This is because | rustc_type_ir/src/solve/mod | |
FIXME: We will need to preserve the original semicolon token and | rustc_expand/src/placeholders | |
FIXME: We wrap expression fragments in parentheses which can break this expectation | tools/rust-analyzer/crates/hir-expand/src/builtin/fn_macro | |
FIXME: We'd want to keep more accurate spans than "the method signature" when | rustc_hir_analysis/src/check/compare_impl_item | |
FIXME: Weirdly, we normalize the ret ty in this candidate, but no other candidates | rustc_hir_typeck/src/method/probe | |
FIXME: Whats the difference between this and unresolved_proc_macro | tools/rust-analyzer/crates/hir-def/src/nameres/diagnostics | |
FIXME: When crate_type is not available | rustc_session/src/session | |
FIXME: When running on rust-lang managed CI and it's not a nightly build | build_helper/src/git | |
FIXME: When we get rid of `ConstScalar::Unknown`, we can just look at precomputed | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: Which of these are POSIX, and which are GNU/Linux? | tools/miri/src/shims/unix/foreign_items | |
FIXME: While a translatable diagnostic message can have an argument | rustc_lint/src/non_local_def | |
FIXME: Whitespace is not part of the matched block | tools/rust-analyzer/crates/ide-ssr/src/tests | |
FIXME: Why do we not remove implied features on "-" here? | rustc_codegen_gcc/src/gcc_util rustc_codegen_llvm/src/llvm_util | |
FIXME: Why don't these have their own structs? | tools/jsondoclint/src/validator | |
FIXME: Why don't we consider `SegmentParam` to be simple? | tools/rustfmt/src/overflow | |
FIXME: Why is this pub(crate)? | tools/rust-analyzer/crates/ide/src/hover | |
FIXME: Why is this the same error code as `InvalidReprHintNoParen` and `InvalidReprHintNoValue`? | rustc_attr_parsing/src/session_diagnostics | |
FIXME: Windows has QoS APIs, we should use them! | tools/rust-analyzer/crates/stdx/src/thread/intent | |
FIXME: With current `TokenCursor` it's hard to break tokens into more than 2 | rustc_parse/src/parser/expr | |
FIXME: Working around rust-lang/rust/issues/54385 | rustc_const_eval/src/interpret/place rustc_const_eval/src/interpret/projection | |
FIXME: Would be better to say *something* here about the *path* being | rustdoc/clean/types | |
FIXME: Would be nice if we had a span here | rustc_passes/src/check_attr rustc_passes/src/check_attr rustc_passes/src/check_attr | |
FIXME: Would be nice to get rid of this somehow | tools/rust-analyzer/crates/base-db/src/lib | |
FIXME: Would be nice to handle `cfg_attr` as well. Only problem is to check that cfg | tools/clippy/clippy_lints/src/attrs/duplicated_attributes | |
FIXME: Wrong name? This is could also be a registered attribute | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: Yeet this | tools/rust-analyzer/crates/ra-salsa/src/derived/slot | |
FIXME: [0..200; 2]; | tools/clippy/tests/ui/single_range_in_vec_init | Closed |
FIXME: [vec!0..200; 2]; | tools/clippy/tests/ui/single_range_in_vec_init | Closed |
FIXME: __wasi_fd_fdstat_get | std/src/sys/pal/wasi/fd | |
FIXME: `--generate-link-to-definition` tries to resolve cfged out code | bootstrap/src/core/build_steps/doc bootstrap/src/core/build_steps/doc | |
FIXME: `-Zrustdoc-map` does not yet correctly work for transitive dependencies | bootstrap/src/core/build_steps/doc | |
FIXME: `.value()` uses `clean::utils::format_integer_with_underscore_sep` under the | rustdoc/html/render/mod | |
FIXME: `C` should be identified as an ambiguous item | ui/imports/glob-conflict-cross-crate-2 ui/imports/glob-conflict-cross-crate-3 | |
FIXME: `E0384` is not the only error that this diagnostic handles | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/mutability_errors | |
FIXME: `Into::into` is not inline, but due to | tools/rustfmt/tests/source/issue-2917/packed_simd tools/rustfmt/tests/target/issue-2917/packed_simd | |
FIXME: `Iterator::partition_in_place()` or `Vec::drain_filter()` may make it | tools/rust-analyzer/crates/hir-ty/src/display | |
FIXME: `None` is inferred as unknown here for some reason | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/mutability_errors | |
FIXME: `SyntaxContext` for spans from proc macro crates is lost during encoding | rustc_expand/src/proc_macro_server | |
FIXME: `T` in `ty!(T)` should be replaced by `PathTransform` | tools/rust-analyzer/crates/ide-assists/src/handlers/add_missing_impl_members tools/rust-analyzer/crates/ide-completion/src/completions/item_list/trait_impl | |
FIXME: `UnsafeList` is not movable | std/src/sys/sync/condvar/sgx std/src/sys/sync/mutex/sgx | |
FIXME: `applySnippetTextEdits` does not support non-empty selection ranges | tools/rust-analyzer/crates/ide/src/move_item | |
FIXME: `body_param_names` currently returning empty symbols for `wild` as well | tools/clippy/clippy_lints/src/functions/renamed_function_params | |
FIXME: `cfg(TRUE)` attributes do not currently remove themselves during expansion | rustc_expand/src/expand | |
FIXME: `const_eval_resolve_for_typeck` should probably just modify the env itself | rustc_mir_build/src/thir/pattern/const_to_pat rustc_trait_selection/src/traits/mod | |
FIXME: `deduced_param_attrs` has some sketchy encoding settings | rustc_metadata/src/rmeta/decoder/cstore_impl | |
FIXME: `def_span` for an fn-like coroutine will point to the fn's body | rustc_middle/src/values | |
FIXME: `dependency_formats` can report `profiler_builtins` as `NotLinked` for some | rustc_codegen_ssa/src/back/link | |
FIXME: `derives` are missing in these parent scopes and need to be taken from elsewhere | rustc_resolve/src/lib | |
FIXME: `fallible_list` can't re-use the `key!` macro for list | rustc_target/src/spec/json | |
FIXME: `for` kw | tools/rust-analyzer/crates/ide-completion/src/tests/predicate | |
FIXME: `glob_conflict::f` should raise an | ui/imports/glob-conflict-cross-crate-1 | |
FIXME: `glob_conflict::glob::f` should raise an | ui/imports/glob-conflict-cross-crate-1 | |
FIXME: `h` should be a handle to the current module and what `pv` should be is unknown | tools/miri/src/shims/tls | |
FIXME: `id` should be identified as an ambiguous item | ui/imports/ambiguous-2 ui/imports/ambiguous-4 | |
FIXME: `if` forces a temporary (unlike `match`), so the const isn't direct | mir-opt/single_use_consts | |
FIXME: `impl Trait<'a> + 'b` should live as long as 'b, even if 'b outlives 'a | ui/impl-trait/lifetimes | |
FIXME: `probe_for_name_many` searches for methods in inherent implementations | rustc_hir_typeck/src/method/suggest | |
FIXME: `substs_from_path_segment()` pushes `TyKind::Error` for every parent | tools/rust-analyzer/crates/hir-ty/src/lower tools/rust-analyzer/crates/hir-ty/src/lower tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME: `switchInt` will have three targets after `UnreachableEnumBranching` | mir-opt/early_otherwise_branch mir-opt/early_otherwise_branch_3_element_tuple | |
FIXME: `unicode_width` sometimes disagrees with terminals on how wide a `char` is. For now | rustc_span/src/lib | |
FIXME: `use`s have no easy way to determine their search scope, but they are rare | tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: `usize`` once we drop support for 1.76 | tools/rust-analyzer/crates/mbe/src/parser | |
FIXME: `workspace_structure_change` is computed from `should_refresh_for_change` which is | tools/rust-analyzer/crates/rust-analyzer/src/global_state | |
FIXME: a more precise name would probably be `Symbol`? | tools/rust-analyzer/crates/ide-db/src/defs | |
FIXME: account for RPITIT | rustc_hir_typeck/src/fn_ctxt/suggestions | |
FIXME: account for `#![feature(specialization)]` | rustc_trait_selection/src/error_reporting/infer/note_and_explain | |
FIXME: account for associated `async fn`s | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME: account for async-drop-glue | rustc_sanitizers/src/cfi/typeid/itanium_cxx_abi/transform | |
FIXME: account for labels not in the same line | rustc_errors/src/emitter | |
FIXME: account for returning some type in a trait fn impl that has | rustc_trait_selection/src/error_reporting/infer/note_and_explain | |
FIXME: account for the need of parens in `&(dyn Trait + '_)` | rustc_trait_selection/src/error_reporting/infer/nice_region_error/static_impl_trait | |
FIXME: actually check that the two expressions in the binop are | rustc_parse/src/parser/diagnostics rustc_parse/src/parser/diagnostics | |
FIXME: actually check the expected vs found types, but right now | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME: actually expand with const | tools/rust-analyzer/crates/hir-def/src/macro_expansion_tests/builtin_derive_macro | |
FIXME: actually provide the hidden type; it is relevant for auto traits | tools/rust-analyzer/crates/hir-ty/src/chalk_db | |
FIXME: actually read the file here if the user asked for macro expansion | tools/rust-analyzer/crates/hir-expand/src/builtin/fn_macro | |
FIXME: actually support such cases (need to figure out how to move from the | rustc_borrowck/src/diagnostics/conflict_errors | |
FIXME: actually this causes a SIGILL in LLVM | rustc_codegen_ssa/src/mir/naked_asm | |
FIXME: add a last() method to AllocRange that returns the last inclusive offset (end() is exclusive) | tools/miri/src/concurrency/range_object_map | |
FIXME: add arc4random_buf to shim-3ds | std/src/sys/random/mod | |
FIXME: add checks for x2. Currently, their MIRs are not symmetric in the two | mir-opt/dataflow-const-prop/enum | |
FIXME: add dedicated variant to json Type? | rustdoc/json/conversions | |
FIXME: add extra indent for the unsafe blocks | tools/clippy/clippy_utils/src/source | |
FIXME: add mir-opt tests | rustc_mir_transform/src/shim/async_destructor_ctor | |
FIXME: add note explaining explicit negative trait bounds | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME: add quickfix | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/private_assoc_item tools/rust-analyzer/crates/ide-diagnostics/src/handlers/private_field tools/rust-analyzer/crates/ide-diagnostics/src/handlers/unresolved_method | |
FIXME: add random data generation to xous | std/src/sys/random/mod | |
FIXME: add such "forbidden" features for non-x86 targets | rustc_target/src/target_features | |
FIXME: add support for `// only-atomic` to compiletest/header.rs | ui/lint/lint-invalid-atomic-ordering-int | |
FIXME: add the missing variance information and remove this fallback bidirectional | rustc_borrowck/src/polonius/liveness_constraints | |
FIXME: add union handling | rustc_borrowck/src/prefixes | |
FIXME: adt may have generic params | tools/rust-analyzer/crates/ide-assists/src/handlers/generate_function | |
FIXME: all of the above. Analyze potential unsoundness, possibly in concert with a | rustc_borrowck/src/polonius/loan_liveness | |
FIXME: all this just to decide whether to use parentheses | tools/rust-analyzer/crates/hir-ty/src/display | |
FIXME: allow thread-locals to borrow other thread locals? | rustc_borrowck/src/lib | |
FIXME: also handle diverging calls | rustc_borrowck/src/polonius/typeck_constraints | |
FIXME: also look at `tcx.generics_of(self.item_def_id()).params` any that | rustc_hir_analysis/src/hir_ty_lowering/mod | |
FIXME: also support deref for stuff like `Rc` arguments | rustc_borrowck/src/diagnostics/conflict_errors | |
FIXME: alter the Rust <-> Rust calling convention to prevent this problem | core/src/num/f32 core/src/num/f64 | |
FIXME: ask Cargo to provide this data instead of re-deriving | tools/rust-analyzer/crates/project-model/src/env | |
FIXME: audit that this behaves correctly with suggestions | rustc_errors/src/emitter | |
FIXME: avoid this clone (requires implementing Default manually) | rustdoc/formats/cache | |
FIXME: avoid this conversion by always storing liveness data in this shape in the rest of | rustc_borrowck/src/polonius/liveness_constraints | |
FIXME: based on from utils::generate_impl_text_inner | tools/rust-analyzer/crates/ide-assists/src/handlers/generate_default_from_new | |
FIXME: because this is doc(inline)d, we *have* to use intra-doc links because the actual link | core/src/ffi/c_str | |
FIXME: bench to compare this to FxHashSet and to other SmallVec sizes | tools/miri/src/borrow_tracker/tree_borrows/tree | |
FIXME: bind fd_fdstat_get - need to define a custom return type | std/src/os/wasi/fs | |
FIXME: bind fd_filestat_set_times maybe? - on crates.io for unix | std/src/os/wasi/fs | |
FIXME: bind fd_readdir - can't return `ReadDir` since we only have entry name | std/src/os/wasi/fs | |
FIXME: bind path_filestat_set_times maybe? - on crates.io for unix | std/src/os/wasi/fs | |
FIXME: bind poll_oneoff maybe? - probably should wait for I/O to settle | std/src/os/wasi/fs | |
FIXME: bind random_get maybe? - on crates.io for unix | std/src/os/wasi/fs | |
FIXME: broken codegen on big-endian (rust-lang/rust/issues/127205) | ui/simd/simd-bitmask-notpow2 | |
FIXME: broken test, this should fix visibility of the re-export | tools/rust-analyzer/crates/ide-assists/src/handlers/fix_visibility | |
FIXME: cache the `find_local_import_locations` output? | tools/rust-analyzer/crates/hir-def/src/find_path | |
FIXME: calculate inner types | tools/rust-analyzer/crates/hir-ty/src/chalk_db | |
FIXME: calculate upvars | tools/rust-analyzer/crates/hir-ty/src/chalk_db | |
FIXME: call guards | ui/array-slice-vec/vec-matching-fold ui/array-slice-vec/vec-matching-fold | |
FIXME: call pretty_print_const_valtree? | rustc_middle/src/mir/pretty | |
FIXME: calling `fma` from libc without FMA target feature uses expensive software emulation | rustc_codegen_gcc/src/intrinsic/mod | |
FIXME: calling `fma` from libc without FMA target feature uses expensive sofware emulation | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME: can be expensive to create, we should check the use sites and maybe replace them with | tools/rust-analyzer/crates/hir-expand/src/lib | |
FIXME: can this be done cleaner? | tools/miri/src/borrow_tracker/stacked_borrows/mod | |
FIXME: can this case be generalized to work for an | rustc_borrowck/src/diagnostics/mutability_errors | |
FIXME: can this line be shared with the same in `value_ptr()` | core/tests/ptr | |
FIXME: can we abort the build scripts here if they are already running? | tools/rust-analyzer/crates/rust-analyzer/src/reload | |
FIXME: can we add suggestions like `&(0..=9)`? | ui/range/range-inclusive-pattern-precedence2 | |
FIXME: can we prefer the one from the sysroot? | tools/miri/src/helpers | |
FIXME: can we somehow preserve the immutability of `ptr`? | tools/miri/src/machine | |
FIXME: can't find crate for 'std' | run-make/incr-test-moved-file/rmake run-make/moved-src-dir-fingerprint-ice/rmake | |
FIXME: can't find crate for `std` | run-make/incr-prev-body-beyond-eof/rmake | |
FIXME: cdsplit in llvm-bolt is currently broken on AArch64, drop this once it's fixed upstream | tools/opt-dist/src/bolt | |
FIXME: cfg options | tools/rust-analyzer/crates/ide/src/lib | |
FIXME: cfg_attr with multiple attributes will not be handled correctly. We will only keep the first attribute | tools/rust-analyzer/crates/hir-expand/src/cfg_process | |
FIXME: change `Lint`'s label to not store a path in it but split the prefix off instead? | tools/rust-analyzer/crates/ide-completion/src/completions/attribute/lint | |
FIXME: change the new fn checking to a more semantic approach when that's more | tools/rust-analyzer/crates/ide-assists/src/utils | |
FIXME: check `Thin` instead of `Sized` | rustc_mir_transform/src/validate | |
FIXME: check if other terminators need the same handling as `Call`s, in particular | rustc_borrowck/src/polonius/typeck_constraints | |
FIXME: check path types | tools/rust-analyzer/crates/ide/src/inlay_hints/lifetime | |
FIXME: check safety and signature compatibility | rustc_mir_transform/src/validate | |
FIXME: check safety, captures, and signature compatibility | rustc_mir_transform/src/validate | |
FIXME: check same pointee? | rustc_mir_transform/src/validate | |
FIXME: check signature compatibility | rustc_mir_transform/src/validate | |
FIXME: check specified components against the target architectures we | tools/tidy/src/target_specific_tests | |
FIXME: check that this item can have body stability | rustc_passes/src/stability | |
FIXME: check the return type here somehow | rustc_hir_typeck/src/method/probe | |
FIXME: check the values | rustc_borrowck/src/type_check/mod | |
FIXME: check this | tools/rust-analyzer/crates/hir-ty/src/variance tools/rust-analyzer/crates/hir-ty/src/variance | |
FIXME: check types of const infers here | rustc_privacy/src/lib | |
FIXME: check when rust-installer test sh files will be removed | tools/tidy/src/bins | |
FIXME: check whether it is cheaper to precompute the entire call graph instead of invoking | rustc_mir_transform/src/inline/cycle | |
FIXME: checking `item.name.is_some()` is very implicit and leads to lots of special | rustdoc/formats/renderer | |
FIXME: clicking on the link should just open the file in the editor | tools/rust-analyzer/crates/ide/src/doc_links tools/rust-analyzer/crates/ide/src/doc_links | |
FIXME: comeup with a better API for `needs_parens_in`, so that we don't have to do *this | tools/rust-analyzer/crates/ide/src/inlay_hints/adjustment | |
FIXME: compiler fences are currently ignored | tools/miri/src/intrinsics/atomic | |
FIXME: compute this field on demand | rustdoc/clean/types | |
FIXME: consider caching errors too | rustc_trait_selection/src/traits/fulfill rustc_trait_selection/src/traits/fulfill | |
FIXME: consider changing this to only promote &mut [] for default borrows | rustc_mir_transform/src/promote_consts | |
FIXME: consider combining this definition with regular `Destructor` | rustc_middle/src/ty/mod | |
FIXME: consider combining this method with `AdtDef::destructor` and removing | rustc_middle/src/ty/adt | |
FIXME: consider crates\hir_def\src\nameres\attr_resolution.rs? | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: consider making this a query | rustc_middle/src/ty/util | |
FIXME: consider not copying constants through stack. (Fixable by codegen'ing | rustc_codegen_ssa/src/mir/rvalue | |
FIXME: consider split debug info on other platforms (e.g., Linux, macOS) | bootstrap/src/utils/helpers | |
FIXME: consider suggesting the use of associated `const`s | rustc_trait_selection/src/error_reporting/infer/note_and_explain | |
FIXME: consider using an attribute instead of side-effects | ui/print_type_sizes/generics ui/print_type_sizes/niche-filling ui/print_type_sizes/no_duplicates ui/print_type_sizes/packed ui/print_type_sizes/repr-align ui/print_type_sizes/uninhabited | |
FIXME: convert bounds to where-clauses where they get too big or if | tools/rustfmt/src/items | |
FIXME: correctly handle macro expansion | tools/rust-analyzer/crates/hir/src/source_analyzer | |
FIXME: could be `trunc nuw`, even for signed | rustc_codegen_llvm/src/intrinsic | |
FIXME: could be improved to suggest surrounding every pattern with Some(_) | tools/clippy/clippy_lints/src/matches/match_on_vec_items | |
FIXME: could replace with the following, but we already calculated `method_predicates` | rustc_hir_typeck/src/method/confirm | |
FIXME: could there ever be a primitive not in the type namespace? | rustdoc/passes/collect_intra_doc_links | |
FIXME: could we recover with this? | rustc_parse/src/parser/diagnostics | |
FIXME: create a function "display_if_not_quiet" or something along the line | rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test rustc_codegen_gcc/build_system/src/test | |
FIXME: create tests for the atomics | rustc_target/src/spec/targets/nvptx64_nvidia_cuda | |
FIXME: current `InTypeConstId` is very unstable, so we only use it in non local crate | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME: current rustc does not seem to emit `<macro file>` files anymore? | tools/rust-analyzer/crates/rust-analyzer/src/diagnostics/to_proto | |
FIXME: currently not working for suggesting `map_or_else`, see #102408 | rustc_hir_typeck/src/method/suggest | Closed |
FIXME: currently we do not detect this UB, since we don't want the result of const-eval | ui/consts/const-eval/const_fn_target_feature | |
FIXME: currently we do nothing to prevent placeholders with the new universe being | rustc_infer/src/infer/relate/higher_ranked | |
FIXME: currently we do nothing with these, but perhaps we can do better? | rustc_borrowck/src/diagnostics/region_errors | |
FIXME: currently we never try to compose autoderefs | rustc_hir_typeck/src/fn_ctxt/_impl | |
FIXME: currently, `--fix` gives an error while checking tests for libtest | bootstrap/src/core/build_steps/clippy | |
FIXME: currently, external items only generate a link to their documentation | rustdoc/html/highlight | |
FIXME: dead spans? | tools/rustfmt/src/types | |
FIXME: deduplicate with `HirDisplay` impl | tools/rust-analyzer/crates/hir-def/src/pretty | |
FIXME: deduplicate with rustc_lint (`BuiltinLintDiag::InnerAttributeUnstable`) | rustc_resolve/src/macros | |
FIXME: deduplicate with rustc_lint (`BuiltinLintDiag::PatternsInFnsWithoutBody`) | rustc_ast_passes/src/errors rustc_ast_passes/src/errors | |
FIXME: delete interpreter state associated with this condvar | tools/miri/src/shims/unix/sync | |
FIXME: delete interpreter state associated with this mutex | tools/miri/src/shims/unix/sync | |
FIXME: delete interpreter state associated with this rwlock | tools/miri/src/shims/unix/sync | |
FIXME: derive Eq for AllocRange in rustc | tools/miri/src/concurrency/range_object_map | |
FIXME: derive macro paths should be checked | tools/clippy/tests/ui-toml/absolute_paths/absolute_paths | |
FIXME: desugared exprs don't have ptr, that's wrong and should be fixed | tools/rust-analyzer/crates/hir-def/src/body/lower | |
FIXME: desugared labels don't have ptr, that's wrong and should be fixed somehow | tools/rust-analyzer/crates/hir-def/src/body/lower | |
FIXME: desugared pats don't have ptr, that's wrong and should be fixed somehow | tools/rust-analyzer/crates/hir-def/src/body/lower | |
FIXME: detached file | tools/rust-analyzer/crates/hir/src/semantics/source_to_def | |
FIXME: diagnose `become` outside of functions | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: diagnose return outside of function | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: differentiate `TwoPhaseBorrow` | rustc_borrowck/src/borrow_set | |
FIXME: differentiate between unstable and internal attributes just | rustc_passes/src/check_attr | |
FIXME: directly extract the bits from a valtree instead of evaluating an | rustc_codegen_ssa/src/debuginfo/type_names | |
FIXME: disable validation if there's an attribute, since some proc macros use this syntax | tools/rust-analyzer/crates/syntax/src/validation | |
FIXME: disabled since it fails on CI saying the csky component is missing | tools/tidy/src/target_policy assembly/targets/targets-elf | |
FIXME: disabled since it requires a custom LLVM until the upstream LLVM adds support for the target (espressif/llvm-project/issues/4) | tools/tidy/src/target_policy assembly/targets/targets-elf | |
FIXME: do not do double reverse | core/src/iter/adapters/array_chunks | |
FIXME: do not handle callsites in macros' parameters, because | tools/rust-analyzer/crates/ide-assists/src/handlers/inline_call | |
FIXME: do proper macro def highlighting rust-lang/rust-analyzer/issues/6232 | tools/rust-analyzer/crates/ide/src/syntax_highlighting | |
FIXME: do some checks here | tools/rust-analyzer/crates/hir-ty/src/infer/pat | |
FIXME: do some more logic on `move` to invalidate the old location | rustc_const_eval/src/interpret/operand | |
FIXME: do this in place | tools/rust-analyzer/crates/stdx/src/lib | |
FIXME: do we need to distinguish shallow and deep fake borrows? In fact, do we need to | rustc_middle/src/mir/visit | |
FIXME: do we want to allow `expr -> pattern` conversion to create path expressions? | rustc_ast_lowering/src/pat | |
FIXME: document this | rustdoc-json-types/lib | |
FIXME: document why/how this is different from `tcx.local_parent(def_id)` | rustc_hir_analysis/src/hir_ty_lowering/mod | |
FIXME: does the None variant make sense? Probably not | tools/rust-analyzer/crates/ide-db/src/assists | |
FIXME: doesn't need deref * parens. But `ctx.sema.resolve_method_call` doesn't resolve trait implementations | tools/rust-analyzer/crates/ide-assists/src/handlers/destructure_tuple_binding | |
FIXME: doesn't work on m68k | rustc_codegen_gcc/build_system/src/test | |
FIXME: don't duplicate this between the optimized_mir/mir_for_ctfe queries | rustc_mir_transform/src/lib | |
FIXME: don't ignore diagnostics for in type const | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: don't rely on global state, instead bubble up errors. Note: this is very hard to do | rustc_monomorphize/src/collector | |
FIXME: double semicolon | tools/rust-analyzer/crates/ide-assists/src/handlers/extract_function | |
FIXME: dyn types may not have principal trait and we don't want to return auto trait | tools/rust-analyzer/crates/hir-ty/src/chalk_ext | |
FIXME: eliminate the duplication with `Visitor`. But this also | rustc_lint/src/passes | |
FIXME: ensure some kind of non-aliasing between LHS and RHS? | rustc_const_eval/src/interpret/step | |
FIXME: ensure validation always reports this and stop making interning care about it | rustc_const_eval/src/const_eval/eval_queries | |
FIXME: enum of byte/string | rustc_lint_defs/src/lib | |
FIXME: error in this case? | test/src/bench | |
FIXME: error message is confusing | ui/match/validate-range-endpoints | |
FIXME: evaluate and unify with the const | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: evaluate bodies with statements and evaluate bindings to see if they would be | rustc_lint/src/default_could_be_derived | |
FIXME: eventually we don't want to always force this symbol to have | rustc_monomorphize/src/partitioning | |
FIXME: expand macro and check output for mutable usages of the variable? | tools/rust-analyzer/crates/ide-assists/src/handlers/extract_function | |
FIXME: explain `globs` | rustc_feature/src/accepted | |
FIXME: expressions in curly brackets can cause ambiguity after insertion | tools/rust-analyzer/crates/ide-db/src/path_transform | |
FIXME: extend the AST items to have a head span, or replace callers with pointing at | rustc_span/src/source_map | |
FIXME: extract this logic for use in other diagnostics | rustc_trait_selection/src/error_reporting/infer/note_and_explain | |
FIXME: false negatives (i.e. the lint is not emitted when it should be) | rustc_lint/src/dangling | |
FIXME: false positive. This parenthesis is required | ui/lint/lint-unnecessary-parens | |
FIXME: fetch the limit properly | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME: finally remove std support for wasm32-unknown-unknown | std/src/sys/random/mod | |
FIXME: find a better way to do this. See rust-lang/rust/issues/117271 | rustc_target/src/callconv/nvptx64 | |
FIXME: find a way to add rustflags to ui-cargo tests | tools/clippy/tests/ui-cargo/module_style/fail_mod_remap/src/main | |
FIXME: find a way to also check ScalarPair when one side can be uninit but | rustc_const_eval/src/interpret/validity | |
FIXME: find a way to bring this back | tools/rust-analyzer/xtask/src/dist | |
FIXME: find a way to treat this more uniformly (probably by fixing codegen) | rustc_mir_transform/src/gvn | |
FIXME: foo | tools/rust-analyzer/crates/hir-expand/src/fixup | |
FIXME: for clarity, diagnostics for these cases might be better off | ui/borrowck/two-phase-activation-sharing-interference | |
FIXME: for now, only bool literals are implemented | tools/rust-analyzer/crates/hir-ty/src/diagnostics/match_check | |
FIXME: for some reason the modules are linted in a different order for this test | tools/clippy/tests/compile-test | |
FIXME: for some reason using `unexpected` or `expected_one_of_not_found` has | rustc_parse/src/parser/diagnostics | |
FIXME: for some tier3 targets, we are overly cautious and always give warnings | rustc_target/src/target_features | |
FIXME: for statics, vtables, and functions, we could in principle print more detail | rustc_middle/src/ty/print/pretty | |
FIXME: for variadic support, do we have to somehow determine callee's extra_args? | rustc_const_eval/src/interpret/call | |
FIXME: format comments between operands and operator | tools/rustfmt/src/expr | |
FIXME: fst::Map should ideally have a way to shrink the backing buffer without the unwrap dance | tools/rust-analyzer/crates/ide-db/src/symbol_index | |
FIXME: get rid of this function | bootstrap/src/utils/helpers | |
FIXME: get rid of this, and use FieldId for tuples and closures | tools/rust-analyzer/crates/hir-ty/src/mir | |
FIXME: get rid of this, just replace it by FnPointer | tools/rust-analyzer/crates/hir-ty/src/lib | |
FIXME: get rid of this? | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME: hack - removes the usage that triggered this rename operation | tools/rust-analyzer/crates/ide/src/rename | |
FIXME: hack on top of a hack: `$e:expr` captures get surrounded in parentheses | tools/rust-analyzer/crates/hir-expand/src/builtin/fn_macro | |
FIXME: handle SIMD correctly | rustc_middle/src/mir/tcx | |
FIXME: handle `cfg_attr` | tools/rust-analyzer/crates/hir-expand/src/db tools/rust-analyzer/crates/hir-expand/src/db tools/rust-analyzer/crates/hir-expand/src/lib tools/rust-analyzer/crates/hir-expand/src/lib tools/rust-analyzer/crates/hir-expand/src/lib tools/rust-analyzer/crates/hir-expand/src/lib | |
FIXME: handle `mod` inside block expression | tools/rust-analyzer/crates/hir-def/src/test_db | |
FIXME: handle block expressions as modules (their parent is in a different DefMap) | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: handle constraints | tools/rust-analyzer/crates/hir-ty/src/infer/unify | |
FIXME: handle e.g. `struct S<T>; impl<U> S<U> {}` | tools/rust-analyzer/crates/ide-assists/src/utils | |
FIXME: handle empty+hidden | rustc_pattern_analysis/src/rustc | |
FIXME: handle multi-field structs that split across regsave/stack? | rustc_codegen_llvm/src/va_arg | |
FIXME: handle ~const super traits | rustc_trait_selection/src/traits/vtable rustc_trait_selection/src/traits/vtable | |
FIXME: here, the attribute's text range is used to strip away all | tools/rust-analyzer/crates/hir/src/semantics | |
FIXME: heuristic-based suggestion to check current types for where to add `_` | rustc_hir_typeck/src/pat | |
FIXME: how to correctly handle higher-ranked bounds here? | tools/rust-analyzer/crates/hir-ty/src/lower tools/rust-analyzer/crates/hir-ty/src/utils | |
FIXME: how to support TLS in library mode? | std/src/sys/pal/sgx/abi/mod | |
FIXME: alexcrichton/cc-rs/issues/545#issuecomment-679242845 | bootstrap/src/core/build_steps/llvm | |
FIXME: fortanix/rust-sgx/issues/110 | std/src/net/tcp/tests std/src/net/tcp/tests std/src/net/tcp/tests | |
FIXME: llvm/llvm-project/issues/50591 | rustc_codegen_llvm/src/context | |
FIXME: rust-lang/rust-analyzer/issues/11762, this currently always returns Unknown | tools/rust-analyzer/crates/ide/src/hover/render | |
FIXME: rust-lang/rust-analyzer/pull/12937#discussion_r937633695 | tools/rust-analyzer/crates/hir-expand/src/fixup | |
FIXME: rust-lang/rust/issues/112504 | ui/unsafe/unsafe_op_in_unsafe_fn/wrapping-unsafe-block-sugg | |
FIXME: rust-lang/rust/issues/119426 | rustc_lint/src/unused | |
FIXME: hygiene is not considered | rustc_resolve/src/late | |
FIXME: i64 is ok for g*/o* registers on SPARC-V8+ ("h" constraint in GCC) | rustc_target/src/asm/sparc | |
FIXME: ideally `LocalKind` would carry more information to more accurately explain the problem | ui/borrowck/return-local-binding-from-desugaring | |
FIXME: ideally this would be a set of `BorrowIndex`, not `Place`s | rustc_borrowck/src/lib | |
FIXME: ideally this would handle type params and projections properly, for now just assume it's the same type | tools/clippy/clippy_lints/src/indexing_slicing | |
FIXME: ideally we should only trigger a workspace fetch for non-library changes | tools/rust-analyzer/crates/rust-analyzer/src/global_state | |
FIXME: ideally we would "just" check the `cmd` itself, but it does not allow inspecting | tools/compiletest/src/runtest | |
FIXME: ideally we would like to warn *if the complicated type can be simplified*, but it's hard | tools/clippy/clippy_lints/src/types/mod | |
FIXME: ideally we would want to trim the def paths, but this is not | rustc_mir_build/src/check_unsafety | |
FIXME: ideally we wouldn't have to do this | rustc_const_eval/src/interpret/cast | |
FIXME: ideally, we should look at the type we are matching against and | tools/rust-analyzer/crates/ide-completion/src/completions/pattern | |
FIXME: ideally, we suggest 'a: 'b + 'c, but as of today (may 04, 2019), the null error | ui/nll/outlives-suggestion-simple | Closed |
FIXME: if | tools/clippy/clippy_lints/src/same_name_method | |
FIXME: if `found` could be `impl Iterator` we should suggest that | rustc_hir_typeck/src/fn_ctxt/suggestions | |
FIXME: if indent_style != Visual, then the budgets below might | tools/rustfmt/src/items | |
FIXME: if the associated item is defined directly on the type alias | rustdoc/passes/collect_intra_doc_links | |
FIXME: if the issuing region `i` can reach a live region `r` at point `p`, and `r` is | rustc_borrowck/src/dataflow | |
FIXME: if the main #[cfg] syntax decided to support non-string literals | rustdoc/clean/cfg | |
FIXME: if there were errors, this might've been in the eager expansion from an | tools/rust-analyzer/crates/hir-def/src/nameres/collector | |
FIXME: if this is an implied shortcut link, it's bad style to suggest `@` | rustdoc/passes/collect_intra_doc_links rustdoc/passes/collect_intra_doc_links | |
FIXME: if we call the functions in `std::ops`, we still get the panics | tools/miri/tests/pass/overflow_checks_off | |
FIXME: if we ever support 512bit integers, this will be wrong! For such large integers | rustc_codegen_ssa/src/base | |
FIXME: if we kept the original cache key, we could mark projection | rustc_trait_selection/src/traits/fulfill | |
FIXME: if we're managed by git, we should probably instead ask git if the given path | bootstrap/src/core/build_steps/dist | |
FIXME: if/when the output of the test harness can be tested on its own, this test should be | rustdoc-ui/doctest/failed-doctest-compile-fail rustdoc-ui/doctest/failed-doctest-extra-semicolon-on-item rustdoc-ui/doctest/failed-doctest-missing-codes rustdoc-ui/doctest/failed-doctest-output-windows rustdoc-ui/doctest/failed-doctest-output rustdoc-ui/doctest/failed-doctest-should-panic-2021 rustdoc-ui/doctest/failed-doctest-should-panic rustdoc-ui/remap-path-prefix-failed-doctest-output rustdoc-ui/remap-path-prefix-invalid-doctest rustdoc-ui/remap-path-prefix-passed-doctest-output | |
FIXME: implement | tools/rust-analyzer/crates/ide-db/src/search tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: implement `-Clink-self-contained=+/-unwind,+/-sanitizers`, move the shipped libunwind | rustc_metadata/src/native_libs | |
FIXME: implement dynamic types async drops | rustc_middle/src/ty/util | |
FIXME: implement higher kinded lifetime bounds on nested opaque types. They are not | rustc_ty_utils/src/opaque_types | |
FIXME: implement in a way that also builds source map and calculates assoc resolutions in type inference | tools/rust-analyzer/crates/hir-def/src/body/lower | |
FIXME: implement on Redox, l4re | std/src/sys/pal/unix/thread | |
FIXME: implement optimization to not instantiate a certain morphology of | rustc_middle/src/ty/util | |
FIXME: implement reading the thread function's return place | tools/miri/src/shims/unix/thread | |
FIXME: implement this check | ui/return/return-impl-trait-bad | |
FIXME: import | tools/rust-analyzer/crates/hir-def/src/item_scope | |
FIXME: import is classified as function | tools/rust-analyzer/crates/ide/src/references tools/rust-analyzer/crates/ide/src/references | |
FIXME: improve formatting: rust-lang/rust/issues/65280 | std/src/backtrace | |
FIXME: improve this | tools/rust-analyzer/crates/ide-db/src/imports/insert_use | |
FIXME: in other suggestions we've reversed the inner spans of doc comments. We | rustc_lint/src/lints | |
FIXME: incorrectly returns false when comment is contained completely within | tools/rustfmt/src/expr | |
FIXME: initial AVX512VBMI variant didn't actually pass muster | portable-simd/crates/core_simd/src/swizzle_dyn | |
FIXME: insert lifetime vars once LifetimeData::InferenceVar | tools/rust-analyzer/crates/hir-ty/src/infer/unify | |
FIXME: instead of having a separate function here, maybe use | tools/rust-analyzer/crates/ide-assists/src/tests | |
FIXME: instead of splitting the shorthand, recursively trigger a rename of the | tools/rust-analyzer/crates/ide-db/src/rename | |
FIXME: instead of storing the stringified expression, store `self` directly instead | rustdoc/clean/mod | |
FIXME: instead of this hard-coded list, we should check if `<adt>::iter` | tools/clippy/clippy_utils/src/ty/mod | |
FIXME: intra-links resolve in their nearest module scope, not their actual scope in cases | rustdoc/intra-doc/in-bodies | |
FIXME: investigate the `generic_const_exprs` test that triggers this issue | rustc_borrowck/src/polonius/liveness_constraints | |
FIXME: investigate the impact of loans traversing applied member constraints and why some | rustc_borrowck/src/dataflow | |
FIXME: investigate using a fixed-size array instead, as the maximum number | std/src/sys/thread_local/key/windows | |
FIXME: invocations in semicolon-less expressions positions are expanded as expressions | rustc_expand/src/expand | |
FIXME: is it a problem to discard the error here? | rustc_const_eval/src/const_eval/eval_queries | |
FIXME: is there a time when the lo and hi crate would be different? | rustdoc/clean/types | |
FIXME: is there a way to only ensure `check::Rustc` here? Last time I tried it failed | bootstrap/src/core/build_steps/doc | |
FIXME: is this true even if P is an adt with a dtor? | rustc_borrowck/src/lib | |
FIXME: is_identity being on `UserType` and not `Canonical<UserType>` is awkward | rustc_hir_typeck/src/fn_ctxt/_impl | |
FIXME: it fails when type of `b` is `Box` with other generic param different from `receiver` | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/unresolved_method | |
FIXME: it is probably better to have one large RefCell, than to have so many small ones | tools/miri/src/concurrency/data_race | |
FIXME: it may be preferable for kills to be encoded in the edges themselves, to simplify and | rustc_borrowck/src/polonius/loan_liveness | |
FIXME: it might make sense to use an actual pointer type here | rustc_codegen_llvm/src/debuginfo/metadata | |
FIXME: it should report `ext` not found because `SettingsExt` | ui/imports/issue-114682-3 | |
FIXME: it would be good to check that it's actually the rightmost flags | run-make/override-aliased-flags/rmake | |
FIXME: it would be more efficient to use references to the token streams | tools/rustfmt/src/macros | |
FIXME: it would be much nicer if we could just tell the remote-test-client to not | tools/compiletest/src/runtest | |
FIXME: it would be nice for this to at least cause a warning | ui/sized/recursive-type-pass | |
FIXME: it would be nice to check that the feature gate was enabled in the original crate, not just ignore it altogether | rustdoc/passes/collect_intra_doc_links | |
FIXME: it would maybe be good to distinguish this from the alias type (when debug printing), and to show the substitution | tools/rust-analyzer/crates/hir-ty/src/display | |
FIXME: it would probably be better to not have casts here and use the proper | rustc_codegen_gcc/src/intrinsic/simd | |
FIXME: just call `WithHeader::alloc_layout` with size reset to 0 | alloc/src/boxed/thin | |
FIXME: keep track of these | tools/rust-analyzer/crates/hir-ty/src/chalk_db | |
FIXME: later on, it'd be nice to provide two links (if possible) for all items | rustdoc/html/highlight | |
FIXME: let_chains | rustc_next_trait_solver/src/solve/assembly/structural_traits rustc_next_trait_solver/src/solve/assembly/structural_traits | |
FIXME: lifetimes | rustc_codegen_ssa/src/mir/mod | |
FIXME: lift these out into a struct | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: lift this lambda refactor to `fn` (rust-lang/rust-analyzer/pull/2834#discussion_r366199205) | tools/rust-analyzer/crates/syntax/src/validation | |
FIXME: like above, this is incorrect for some byte values | core/benches/ascii | |
FIXME: like, real html escaping | tools/rust-analyzer/crates/ide/src/syntax_highlighting/html | |
FIXME: lint here recommending `Enum::<...>::Variant` form | rustc_hir_analysis/src/hir_ty_lowering/mod | |
FIXME: macro allows no arg -> is valid. But assist should result in invalid code | tools/rust-analyzer/crates/ide-assists/src/handlers/destructure_tuple_binding | |
FIXME: macro args are fine | tools/clippy/tests/ui/manual_str_repeat | |
FIXME: macro calls should be checked | tools/clippy/tests/ui-toml/absolute_paths/absolute_paths | |
FIXME: macros | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/mutability_errors | |
FIXME: macros in statement position are treated as expression statements, they should | tools/rust-analyzer/crates/hir-expand/src/lib | |
FIXME: macros, see `expr_id` | tools/rust-analyzer/crates/hir/src/source_analyzer | |
FIXME: make Size::from_bytes const | tools/miri/src/concurrency/range_object_map | |
FIXME: make facilities to test this directly like `tests::check_infer(..)` | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/missing_match_arms | |
FIXME: make the lang item generic checks check for the right generic *kind | rustc_hir_typeck/src/check | |
FIXME: make this a diagnostic item | tools/clippy/clippy_lints/src/casts/cast_possible_truncation | |
FIXME: make this a per-crate map, as, eg, build.rs might have a | tools/rust-analyzer/crates/project-model/src/workspace | |
FIXME: make this a proper lint | rustc_resolve/src/late/diagnostics | |
FIXME: make this string translatable | rustc_middle/src/ty/context | |
FIXME: make this translatable | rustc_ast_passes/src/feature_gate rustc_borrowck/src/diagnostics/region_errors rustc_borrowck/src/diagnostics/region_errors rustc_borrowck/src/diagnostics/region_errors rustc_borrowck/src/diagnostics/region_errors rustc_const_eval/src/check_consts/ops rustc_const_eval/src/check_consts/ops rustc_expand/src/base rustc_lint/src/levels rustc_lint/src/lints rustc_lint/src/lints rustc_lint/src/lints rustc_lint/src/lints rustc_metadata/src/errors rustc_metadata/src/errors rustc_metadata/src/native_libs rustc_middle/src/middle/stability | |
FIXME: make this work in attributes | tools/rust-analyzer/crates/ide/src/hover | |
FIXME: make this work in macro files | tools/rust-analyzer/crates/ide-assists/src/handlers/replace_derive_with_manual_impl | |
FIXME: make this work on windows (gnu and msvc). See the PR | run-make/naked-symbol-visibility/rmake | |
FIXME: make this work with `|| $0` | tools/rust-analyzer/crates/ide-completion/src/context/tests | |
FIXME: may also be stabilized for Rust 2015 (Issues #45477, #44660) | rustc_resolve/src/diagnostics | Closed Closed Closed |
FIXME: maybe have a separate version for resolving mir::UnevaluatedConst? | rustc_middle/src/mir/interpret/queries | |
FIXME: maybe use the system allocator instead? | std/src/sys/thread_local/destructors/list | |
FIXME: maybe we actually want slightly different ranges for the different macro diagnostics | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: maybe we should store the "no response" version in cx, like | rustc_next_trait_solver/src/solve/mod | |
FIXME: maybe wrong? | tools/rust-analyzer/crates/hir-ty/src/infer/unify | |
FIXME: mention it in the docs for `as_mut` and `as_uninit_mut` once stabilized | core/src/ptr/mut_ptr | |
FIXME: mention it in the docs for `as_ref` and `as_uninit_ref` once stabilized | core/src/ptr/const_ptr core/src/ptr/mut_ptr | |
FIXME: merge with `DocCommentDoesNotDocumentAnything` (E0585) | rustc_parse/src/parser/item | |
FIXME: migrate fluent::lint::builtin_asm_labels | rustc_lint/src/lints | |
FIXME: migrate remaining uses to `generate_impl` | tools/rust-analyzer/crates/ide-assists/src/utils | |
FIXME: migrate remaining uses to `generate_trait_impl_intransitive` | tools/rust-analyzer/crates/ide-assists/src/utils | |
FIXME: migrate remaining uses to `generate_trait_impl` | tools/rust-analyzer/crates/ide-assists/src/utils | |
FIXME: migration of this diagnostic will require list support | rustc_mir_build/src/thir/pattern/check_match | |
FIXME: missing Rust patches is not the same as being system llvm; we should rename the flag at some point | bootstrap/src/core/build_steps/test | |
FIXME: more platforms? | ui/process/env-null-vars | |
FIXME: move these to libc (except Haiku, that one needs to link to libbsd.so) | std/src/sys/random/arc4random | |
FIXME: move this file to rustc_metadata::dependency_format, but | rustc_middle/src/middle/dependency_format | |
FIXME: move this function to outer scope (rust-lang/rust-analyzer/pull/2834#discussion_r366196658) | tools/rust-analyzer/crates/syntax/src/validation | |
FIXME: move this into `Lit` and handle negated literal expressions | rustc_hir/src/hir | |
FIXME: move this to the `rustc_abi` | tools/rust-analyzer/crates/hir-ty/src/layout | |
FIXME: mutable patterns should have `Write` access | tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: nasty alloc, this is a hot path! | tools/rust-analyzer/crates/ide-completion/src/completions/flyimport | |
FIXME: need to check whether the assigned object can be a raw pointer, see `tests/ui/borrowck/issue-20801.rs` | rustc_borrowck/src/diagnostics/move_errors | Closed |
FIXME: needed? Doesn't get exercised in any test | rustc_errors/src/emitter | |
FIXME: needs to be pub to be accessed by downstream | rustc_next_trait_solver/src/solve/eval_ctxt/canonical | |
FIXME: needs translation | rustc_query_system/src/query/job | |
FIXME: never type | tools/rust-analyzer/crates/parser/src/grammar/items/traits | |
FIXME: nfc-normalize and validate idents | tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/token_id | |
FIXME: no tests trigger this. If you find example code that does | rustc_hir_analysis/src/check/compare_impl_item | |
FIXME: no_std Cfg? | tools/rust-analyzer/crates/hir-ty/src/display | |
FIXME: non-trait assoc items completion is unsupported yet, see FIXME in the import_assets.rs for more details | tools/rust-analyzer/crates/ide-assists/src/handlers/qualify_path | |
FIXME: none of these functions interact with source level attributes | rustc_codegen_llvm/src/attributes | |
FIXME: normalization and escaping regions | rustc_hir_typeck/src/fn_ctxt/mod | |
FIXME: not all box patterns should be allowed | tools/rust-analyzer/crates/parser/src/grammar/patterns | |
FIXME: not every function, ... is actually an assoc item. maybe we should make | tools/rust-analyzer/crates/hir-def/src/lib | |
FIXME: not suggestable, use something else | rustc_hir_typeck/src/fn_ctxt/checks | |
FIXME: not sure how to make sure all variants of Error are covered | std/src/sys/pal/sgx/abi/usercalls/mod std/src/sys/pal/sgx/mod | |
FIXME: now that we handle DUMMY_SP up above, we should consider | rustc_span/src/source_map | |
FIXME: on mips/mips64 getauxval returns 0, and /proc/self/auxv | tools/rustfmt/tests/source/cfg_if/detect/os/linux/auxvec tools/rustfmt/tests/target/cfg_if/detect/os/linux/auxvec | |
FIXME: once we start storing spans for type arguments, turn this | rustc_hir_analysis/src/check/check | |
FIXME: only emit the edges of universal regions that existential regions can reach | rustc_borrowck/src/polonius/liveness_constraints | |
FIXME: only remove `libc` when `stdbuild` is enabled | rustc_passes/src/stability | |
FIXME: only until we can resolve them correctly, see FIXME above | tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: only used by miri, should be removed once translatable | rustc_const_eval/src/interpret/stack | |
FIXME: panic here when we actually implement specialization | tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests | |
FIXME: panic!? | tools/rust-analyzer/crates/parser/src/parser | |
FIXME: param coverage | tools/rust-analyzer/crates/hir-ty/src/method_resolution | |
FIXME: pass a proper `opt_match_place` | rustc_mir_build/src/builder/matches/mod | |
FIXME: pass an additional condition through from the place | rustc_parse/src/parser/expr | |
FIXME: path concatenation operation doesn't make sense as AST op | tools/rust-analyzer/crates/syntax/src/ast/make | |
FIXME: perf problem described in #55921 | rustc_infer/src/infer/canonical/canonicalizer rustc_infer/src/infer/canonical/canonicalizer | Closed |
FIXME: perhaps this could use `std::lazy` when it is stabilized | tools/suggest-tests/src/static_suggestions | |
FIXME: perhaps use `all_fields` and expose `FieldDef` | rustc_type_ir/src/inherent | |
FIXME: platform-specific code should be moved to `sys` | tools/tidy/src/pal | |
FIXME: please improve this when we get monomorphization support | ui/mir/mir_raw_fat_ptr | |
FIXME: point at the type params that don't have appropriate lifetimes | rustc_hir_analysis/src/hir_ty_lowering/bounds rustc_hir_analysis/src/hir_ty_lowering/dyn_compatibility | |
FIXME: pretty-printer loses the attribute. `{ let Struct { field } = s; }` | ui-fulldeps/pprust-parenthesis-insertion | |
FIXME: pretty-printer produces invalid syntax. `2 + 2 as T < U` | ui-fulldeps/pprust-parenthesis-insertion | |
FIXME: pretty-printer produces invalid syntax. `for _ in 1..{ 2 } {}` | ui-fulldeps/pprust-parenthesis-insertion | |
FIXME: pretty-printer produces invalid syntax. `if (let _ = () && Struct {}.x) {}` | ui-fulldeps/pprust-parenthesis-insertion | |
FIXME: pretty-printer turns this into a range. `0..to_string()` | ui-fulldeps/pprust-parenthesis-insertion | |
FIXME: probe for all types that *could* be arbitrary self-types, not | rustc_hir_typeck/src/method/suggest | |
FIXME: properly type (e.g. usize and fn pointers) the fields | rustc_middle/src/ty/layout | |
FIXME: put #[primary_span] on `ptr_span` once it does not cause conflicts | rustc_lint/src/lints | |
FIXME: quickfix for pattern | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/no_such_field | |
FIXME: quickfix to add required visibility | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/no_such_field | |
FIXME: re-enable emscripten once it can unwind again | alloc/tests/collections/binary_heap alloc/tests/vec | |
FIXME: re-enabled openbsd tests once their socket timeout code | std/src/net/tcp/tests | |
FIXME: re-enabled openbsd/netbsd tests once their socket timeout code | std/src/net/udp/tests | |
FIXME: really it should be `resolution_failure` that does this, not `resolve_with_disambiguator` | rustdoc/passes/collect_intra_doc_links | |
FIXME: recommend `addr()` instead of `as usize` once that is stable | core/src/ptr/const_ptr core/src/ptr/mut_ptr core/src/ptr/non_null | |
FIXME: reconsider how to treat these invalid types | tools/rust-analyzer/crates/hir-ty/src/tests/traits | |
FIXME: record type error - expected mut reference but found shared ref | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: record type error - expected reference but found ptr | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: relay undef bytes to codegen as undef const bytes | rustc_codegen_gcc/src/consts rustc_codegen_gcc/src/consts | |
FIXME: remove `!binding.is_ambiguity_recursive()` after delete the warning ambiguity | rustc_resolve/src/imports | |
FIXME: remove `def_span` body, pass in the right spans here and call `tcx.at().create_def()` | rustc_resolve/src/lib | |
FIXME: remove all these methods, they belong to ast::StmtList | tools/rust-analyzer/crates/syntax/src/ast/node_ext | |
FIXME: remove once rust-lang/rust/issues/112393 is resolved | bootstrap/src/core/build_steps/check | |
FIXME: remove special casing for `test` | rustc_passes/src/stability | |
FIXME: remove the `mutated_bindings_in_closure` completely and add proper fake reads in | tools/rust-analyzer/crates/hir-ty/src/infer/closure | |
FIXME: remove the suggestions that are from derive, as the span is not correct | rustc_middle/src/ty/diagnostics | |
FIXME: remove this | tools/rust-analyzer/crates/ide-completion/src/render | |
FIXME: remove this branch once `structurally_relate_consts` is fully | rustc_infer/src/infer/relate/generalize | |
FIXME: remove this field | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME: remove this function once pulldown_cmark can provide spans for link definitions | rustdoc/html/markdown rustdoc/passes/lint/redundant_explicit_links | |
FIXME: remove this function. Monomorphization is a time consuming job and should always be a query | tools/rust-analyzer/crates/hir-ty/src/mir/monomorphization | |
FIXME: remove this hack once rust-lang/rust/issues/79738 is fixed | rustc_mir_transform/src/gvn rustc_mir_transform/src/gvn rustc_mir_transform/src/gvn | |
FIXME: remove this hack once that issue is fixed | rustc_mir_transform/src/gvn | |
FIXME: remove this unwrap | rustc_middle/src/mir/graphviz | |
FIXME: remove this when `const_evaluatable_unchecked` is a hard error | rustc_trait_selection/src/traits/mod | |
FIXME: remove this when minimal llvm is 19 | bootstrap/src/core/build_steps/llvm | |
FIXME: remove this whole recurse thing when the recursion bug is fixed | rustdoc/html/render/search_index | |
FIXME: remove when no one depends on `generate_impl_text_inner` | tools/rust-analyzer/crates/syntax/src/ast/make | |
FIXME: replace `(t).0` with `_0` | tools/rust-analyzer/crates/ide-assists/src/handlers/destructure_tuple_binding tools/rust-analyzer/crates/ide-assists/src/handlers/destructure_tuple_binding | |
FIXME: replace `t.0` in macro call (not IN macro) with `_0` | tools/rust-analyzer/crates/ide-assists/src/handlers/destructure_tuple_binding | |
FIXME: replace `t.0` in macro call with `_0` | tools/rust-analyzer/crates/ide-assists/src/handlers/destructure_tuple_binding | |
FIXME: replace `t.0` with `_0` | tools/rust-analyzer/crates/ide-assists/src/handlers/destructure_tuple_binding | |
FIXME: replace `t.0` with `_0` (cannot detect range of tuple index in macro call) | tools/rust-analyzer/crates/ide-assists/src/handlers/destructure_tuple_binding | |
FIXME: replace above check_prepare with this once we resolve to usages to extern crate | tools/rust-analyzer/crates/ide/src/rename | |
FIXME: replace above check_prepare with this once we resolve to usages to extern crate declarations | tools/rust-analyzer/crates/ide/src/rename tools/rust-analyzer/crates/ide/src/rename tools/rust-analyzer/crates/ide/src/rename | |
FIXME: replace parents with parts | tools/rust-analyzer/crates/hir-ty/src/mir/eval | |
FIXME: replace stringly-typed constructor with a family of typed ctors, a-la | tools/rust-analyzer/crates/syntax/src/ast/make | |
FIXME: replace usages of this with the mutable syntax tree API | tools/rust-analyzer/crates/syntax/src/ast/make | |
FIXME: replace with a `ast::make` constructor | tools/rust-analyzer/crates/ide-assists/src/handlers/extract_struct_from_enum_variant tools/rust-analyzer/crates/ide-assists/src/handlers/extract_type_alias | |
FIXME: replace with let chain once it becomes stable | tools/rust-analyzer/crates/hir-ty/src/mir/lower | |
FIXME: replace with mathematical constants from cmath | core/src/num/f128 core/src/num/f16 core/src/num/f32 core/src/num/f64 | |
FIXME: replace with proper minicore once available (#130693) | run-make/avr-rjmp-offset/avr-rjmp-offsets | Closed |
FIXME: replacement span is corrupted due to a collision in metavar span table | ui/rust-2018/edition-lint-inter-outlives/edition-lint-infer-outlives-macro ui/rust-2018/edition-lint-inter-outlives/edition-lint-infer-outlives-macro | |
FIXME: report diagnostic if array unsizing happens without indirection | tools/rust-analyzer/crates/hir-ty/src/method_resolution | |
FIXME: report error | tools/rust-analyzer/crates/hir-ty/src/lower tools/rust-analyzer/crates/hir-ty/src/lower tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME: report error (associated type not found) | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME: report error (yield expr in non-coroutine) | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: report error when there are more than 1 parameter | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: report error, invalid Self reference | tools/rust-analyzer/crates/hir-ty/src/infer/path | |
FIXME: report error, unresolved first path segment | tools/rust-analyzer/crates/hir-ty/src/infer/path | |
FIXME: require passing an NT to prevent misuse of this method | rustc_parse/src/parser/attr_wrapper | |
FIXME: requires ForTypes to be implemented | tools/rust-analyzer/crates/ide/src/goto_definition | |
FIXME: requires an internet connection rust-lang/rust/issues/128733 | run-make/thumb-none-cortex-m/rmake | |
FIXME: requires db, more importantly this requires name resolution so we would need to | tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/rust_analyzer_span | |
FIXME: requires lazy normalization | ui/associated-type-bounds/fn-inline ui/associated-type-bounds/fn-wrap-apit ui/associated-type-bounds/struct-bounds | |
FIXME: requires the HIR to somehow track these hrtb lifetimes | tools/rust-analyzer/crates/ide/src/goto_definition | |
FIXME: resolve type aliases (which are not yielded by iterate_path_candidates) | tools/rust-analyzer/crates/hir/src/attrs | |
FIXME: respect diff_command | tools/compiletest/src/runtest | |
FIXME: restore this | tools/rust-analyzer/xtask/src/codegen/grammar | |
FIXME: return `0` for at least some comparisons where we can reliably | rustc_const_eval/src/const_eval/machine | |
FIXME: return a `1` for when both sides are the same pointer, *except* that | rustc_const_eval/src/const_eval/machine | |
FIXME: reuse the logic for "change args" suggestion to account for types | rustc_hir_typeck/src/method/suggest | |
FIXME: rewrite this with `child.stdin.write_all()` because | rustc_codegen_gcc/build_system/src/test | |
FIXME: root_expr should always be the body.body_expr, but since `X` in `[(); X]` doesn't have its own specific body yet, we | tools/rust-analyzer/crates/hir-ty/src/mir/lower | |
FIXME: run-rustfix waiting on multi-span suggestions | tools/clippy/tests/ui/needless_borrow_pat tools/clippy/tests/ui/ref_binding_to_reference | |
FIXME: rustc and rustdoc are considered tools for lints, but not for attributes | rustc_lint/src/context | |
FIXME: rustc does something better for recovery | tools/rust-analyzer/crates/parser/src/lexed_str | |
FIXME: rustc generates E0107 (incorrect number of generic arguments) and not | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME: rustc's coerce_unsized is more specialized -- it only tries to | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | |
FIXME: rustc's ty is dependent on the adt type, maybe we need to do that as well | tools/rust-analyzer/crates/hir-ty/src/builder | |
FIXME: rustdoc documents these two using just `pointer` | tools/clippy/clippy_utils/src/lib | |
FIXME: rustfmt and tidy disagree about the correct formatting of this | std/src/io/buffered/tests | |
FIXME: say something about `metadata` | std/src/os/fortanix_sgx/io | |
FIXME: say something more useful than "almost the same"? | core/src/ptr/mod | |
FIXME: see <rust-lang/rust/issues/132353 | mir-opt/gvn_copy_aggregate | |
FIXME: see <rust-lang/rust/issues/132353> | codegen/clone_as_copy mir-opt/gvn_clone mir-opt/pre-codegen/clone_as_copy | |
FIXME: see FIXME in compiler/rustc_target/src/asm/sparc.rs | ui/asm/sparc/bad-reg | |
FIXME: seems like x87 does not exist? | rustc_codegen_gcc/src/gcc_util | |
FIXME: separate out the code to make a code block into runnable code | rustdoc/html/markdown | |
FIXME: set these flags correctly | tools/rust-analyzer/crates/hir-ty/src/chalk_db | |
FIXME: sgx uses default_read_buf that initializes the buffer | std/src/net/tcp/tests | |
FIXME: shadowing | tools/rust-analyzer/crates/hir-def/src/item_scope tools/rust-analyzer/crates/hir-def/src/nameres/path_resolution | |
FIXME: should also add support for the case fun(f: &Foo) -> &$0Foo | tools/rust-analyzer/crates/ide-assists/src/handlers/introduce_named_lifetime | |
FIXME: should also work in ADT definitions | tools/rust-analyzer/crates/ide-assists/src/handlers/inline_type_alias | |
FIXME: should be | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: should be IntMap<FileId, Vec<ra_id::Diagnostic>> | tools/rust-analyzer/crates/rust-analyzer/src/diagnostics | |
FIXME: should be Vec<flycheck::Diagnostic> | tools/rust-analyzer/crates/rust-analyzer/src/diagnostics | |
FIXME: should be allowed for sparcv8plus but not yet supported in LLVM | assembly/asm/sparc-types assembly/asm/sparc-types assembly/asm/sparc-types | |
FIXME: should be rejected | ui/abi/sparcv8plus | |
FIXME: should be run-rustfix, but rustfix doesn't currently support multipart suggestions, see | ui/lint/unused/issue-67691-unused-field-in-or-pattern | |
FIXME: should be talking about the region lifetime instead | rustc_borrowck/src/lib | |
FIXME: should be the range of the macro name, not the whole derive | tools/rust-analyzer/crates/hir-expand/src/lib | |
FIXME: should error | ui/lint/dangling-pointers-from-temporaries/calls | |
FIXME: should error but doesn't because as soon as there's a single glob import error, we | ui/imports/import-from-missing-star-3 ui/imports/import-from-missing-star-3 | |
FIXME: should have a #[recollect_attr] attribute here and assert that it works | ui/proc-macro/attribute-with-error | |
FIXME: should have a type error here and assert it works but it doesn't | ui/proc-macro/attribute-with-error | |
FIXME: should lint | tools/clippy/tests/ui/transmute | |
FIXME: should not be callable from Rust on GPU targets, is for host's use only | rustc_abi/src/extern_abi/mod | |
FIXME: should not be pub | tools/rust-analyzer/crates/syntax/src/ast/make | |
FIXME: should not expand. legacy macro scoping is not implemented | tools/rust-analyzer/crates/hir-def/src/nameres/tests/macros | |
FIXME: should not see `NotFoundBefore` | tools/rust-analyzer/crates/hir-def/src/nameres/tests/macros | |
FIXME: should not use shell command! | rustc_codegen_gcc/build_system/src/build | |
FIXME: should only show lifetimes here, that is we shouldn't get any completions here when not typing | tools/rust-analyzer/crates/ide-completion/src/tests/predicate | |
FIXME: should suggest removing `ref` too | ui/suggestions/dont-suggest-ref/move-into-closure ui/suggestions/dont-suggest-ref/move-into-closure ui/suggestions/dont-suggest-ref/move-into-closure ui/suggestions/dont-suggest-ref/move-into-closure ui/suggestions/dont-suggest-ref/move-into-closure ui/suggestions/dont-suggest-ref/simple ui/suggestions/dont-suggest-ref/simple ui/suggestions/dont-suggest-ref/simple ui/suggestions/dont-suggest-ref/simple ui/suggestions/dont-suggest-ref/simple ui/suggestions/dont-suggest-ref/simple | |
FIXME: should this be a flag? | tools/rust-analyzer/crates/hir-def/src/data/adt | |
FIXME: should this handle tools that never register a lint, like rustfmt? | rustc_lint/src/context | |
FIXME: should update code to not require this env var | bootstrap/src/core/builder/cargo | |
FIXME: should use the dependency name instead if available, but that depends on | tools/rust-analyzer/crates/hir-ty/src/display | |
FIXME: should we allow an ordinal of 0? The MSVC toolchain has inconsistent support for | rustc_codegen_ssa/src/codegen_attrs | |
FIXME: should we also account for binops, particularly `&&` and `||`? `try` should | rustc_borrowck/src/diagnostics/conflict_errors | |
FIXME: should we also skip `UnsafeCell` behind shared references? Currently that is not | rustc_const_eval/src/interpret/validity | |
FIXME: should we cache `const_data_from_alloc` to avoid repeating this for the | rustc_codegen_ssa/src/mir/operand | |
FIXME: should we check for validity here? It's tricky because we do not have a | tools/miri/src/intrinsics/mod | |
FIXME: should we do something on wasi? | tools/miri/src/shims/tls | |
FIXME: should we forbid "neon" here? But that would be a breaking change | rustc_target/src/target_features | |
FIXME: should we have a cache so we don't do this multiple times for the same `ConstAllocation`? | rustc_codegen_cranelift/src/constant | |
FIXME: should we merge the outer and inner binders somehow? | rustdoc/clean/mod | |
FIXME: should we provide `self` here? | tools/rust-analyzer/crates/hir-def/src/resolver | |
FIXME: should we shrink the size of `buffer` using niche optimization? | core/src/iter/adapters/map_windows | |
FIXME: should we use `inject_hidden_type_unchecked` here? | rustc_next_trait_solver/src/solve/normalizes_to/opaque_types | |
FIXME: should we worry about the count overflowing? The only way to have more than | core/src/iter/traits/iterator | |
FIXME: signed | tools/rust-analyzer/crates/hir-ty/src/mir/eval/shim tools/rust-analyzer/crates/hir-ty/src/mir/eval/shim tools/rust-analyzer/crates/hir-ty/src/mir/eval/shim tools/rust-analyzer/crates/hir-ty/src/mir/eval/shim tools/rust-analyzer/crates/hir-ty/src/mir/eval/shim tools/rust-analyzer/crates/hir-ty/src/mir/eval/shim | |
FIXME: simd_relaxed_fma doesn't relax to non-fused multiply-add | rustc_codegen_cranelift/src/intrinsics/simd | |
FIXME: similarly, we should call function here, not directly working with memory | tools/rust-analyzer/crates/hir-ty/src/mir/eval | |
FIXME: some of these should probably be read-only or write-only | std/src/sys/pal/wasi/fs | |
FIXME: some semantic duplication between "empty vec" and "Err()" | tools/rust-analyzer/crates/ide/src/rename | |
FIXME: some suggestions don't actually need the snippet; see PR #123877's unresolved conversations | rustc_parse/src/parser/pat | Closed |
FIXME: some targets are broken in various ways | ui/abi/compatibility | |
FIXME: something like `Split` trait from chalk-solve might be nice | tools/rust-analyzer/crates/hir-ty/src/chalk_ext | |
FIXME: source call should go through the parse cache | tools/rust-analyzer/crates/hir/src/semantics | |
FIXME: spans are broken | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/moved_out_of_ref | |
FIXME: sparc_cpu_v9 should be in "-v8plus,+v9" group (fixed in LLVM 20) | ui/abi/sparcv8plus | |
FIXME: spec the JSON output properly | rustc_errors/src/json | |
FIXME: special case `(` error message | tools/rust-analyzer/crates/parser/src/grammar/items/adt | |
FIXME: special case type aliases, we can't filter between impl and trait defs here as we lack the substitutions | tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: split the following feature into fine-grained features | tools/rust-analyzer/crates/ide-completion/src/lib | |
FIXME: stable rust doesn't allow generics in constants, but we should | tools/rust-analyzer/crates/hir-def/src/lib | |
FIXME: standard handles cannot be closed (rust-lang/rust/issues/40032) | tools/miri/tests/fail-dep/libc/fs/close_stdout | |
FIXME: still needed? Kept for compatibility for now | tools/rust-installer/src/scripter tools/rust-installer/src/scripter | |
FIXME: supply non-"" `opt_via` when appropriate | rustc_borrowck/src/diagnostics/conflict_errors | |
FIXME: support adding the attribute to TAITs | rustc_mir_transform/src/coroutine | |
FIXME: support extracting return code as an i64 | std/src/sys/pal/unix/process/process_fuchsia | |
FIXME: support indirect references | tools/rust-analyzer/crates/hir-ty/src/mir/eval | |
FIXME: support unsized params in "rust-call" ABI | rustc_codegen_ssa/src/mir/mod | |
FIXME: switch to something more ergonomic here, once available | tools/clippy/clippy_lints/src/lib tools/clippy/clippy_utils/src/lib tools/clippy/src/driver | |
FIXME: test hangs on emscripten | ui/std/thread-sleep-ms | |
FIXME: that being said, we need to investigate these cases better to not ignore regions | rustc_borrowck/src/polonius/liveness_constraints | |
FIXME: the cc-rs crate only recognizes the literal strings | bootstrap/src/core/builder/cargo | |
FIXME: the compiled binary is not run | rustc_codegen_gcc/build_system/src/test | |
FIXME: the error is correct, but the message is terrible | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/break_outside_of_loop | |
FIXME: the error is pretty bad, this should say | ui/implied-bounds/hrlt-implied-trait-bounds-guard | |
FIXME: the following cases need to suggest more things to make users reach a working end state | ui/suggestions/impl-on-dyn-trait-with-implicit-static-bound-needing-more-suggestions | |
FIXME: the following components don't build with `-Zrandomize-layout` yet | bootstrap/src/core/builder/cargo | |
FIXME: the function can be simplified again when #48994 is closed | alloc/src/string | Open |
FIXME: the guard against msvc shouldn't need to be here | bootstrap/src/core/builder/cargo | |
FIXME: the intrinsics like _mm_mask_fmadd_sd should probably directly call the GCC | rustc_codegen_gcc/src/intrinsic/llvm | |
FIXME: the last function (`fn i()`) is not valid Rust as of this writing because you cannot | tools/rust-analyzer/crates/hir-ty/src/tests/traits | |
FIXME: the lexer could be used to turn the ASCII version of unicode | rustc_parse/src/lexer/mod | |
FIXME: the lexer could be used to turn the ASCII version of unicode homoglyphs, instead of | rustc_parse/src/lexer/unicode_chars | |
FIXME: the name `<recur_type>` does not fit the naming scheme | rustc_codegen_llvm/src/debuginfo/metadata | |
FIXME: the old names for rustdoc lints should warn by default once `rustdoc::` makes it to the | ui/lint/rustdoc-renamed | |
FIXME: the second rule of the macro should be removed and an error about | tools/rust-analyzer/crates/hir-def/src/macro_expansion_tests/mbe/regression | |
FIXME: the structure was necessary in the past but now it | rustc_middle/src/hir/map/mod | |
FIXME: the three next warnings are about <pre> elements which are not supposed to | tools/html-checker/main | |
FIXME: the trivia skipping should not be necessary | tools/rust-analyzer/crates/hir/src/semantics | |
FIXME: the {unknown} is a bug | tools/rust-analyzer/crates/hir-ty/src/tests/simple | |
FIXME: there is no way to disambiguate these | rustdoc/intra-doc/associated-items | |
FIXME: there is some leak here | tools/rust-analyzer/crates/hir-ty/src/mir/eval | |
FIXME: there should be a better way of doing this than | rustc_resolve/src/imports | |
FIXME: there was an unused SyntaxErrorKind previously (before this enum was removed) | tools/rust-analyzer/crates/syntax/src/syntax_error | |
FIXME: there's no good reason to use edit_map here | tools/rust-analyzer/crates/rust-analyzer/src/diagnostics/to_proto | |
FIXME: there’s multiple of this functions, investigate using some of the already existing | rustc_codegen_ssa/src/mir/intrinsic | |
FIXME: these are not perfectly accurate, we determine them by the real file's syntax tree | tools/rust-analyzer/crates/ide/src/syntax_highlighting | |
FIXME: these assertions fail if only x87 is enabled | ui/float/int-to-float-miscompile-issue-105626 | |
FIXME: these rounds should be different, but only `.round()` is stable now | tools/rust-analyzer/crates/hir-ty/src/mir/eval/shim tools/rust-analyzer/crates/hir-ty/src/mir/eval/shim | |
FIXME: these should probably recurse and typecheck along the way | rustc_lint/src/dangling | |
FIXME: these two should *fail* because they can't be fixed by fixing the glob import in `foo` | ui/imports/import-from-missing-star-2 | |
FIXME: this *somehow* should be platform agnostic | tools/rust-analyzer/crates/base-db/src/lib | |
FIXME: this actually works OK under rustc | tools/rust-analyzer/crates/hir-def/src/macro_expansion_tests/mbe/matching | |
FIXME: this also currently discards a lot of whitespace in the input... we really need a formatter here | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/missing_fields | |
FIXME: this approach is subtle, complicated, and hard to test, so we should track | rustc_borrowck/src/polonius/typeck_constraints | |
FIXME: this badly needs rename/rewrite (matklad, 2020-02-06) | tools/rust-analyzer/crates/ide-db/src/defs | Closed |
FIXME: this bottom up traversal is not too precise | tools/rust-analyzer/crates/hir-def/src/path/lower | |
FIXME: this branch is for `=>` in macro_rules!, which is currently parsed as | tools/rust-analyzer/crates/syntax-bridge/src/prettify_macro_expansion | |
FIXME: this can use some more human-readable format (ideally, an IR | tools/rust-analyzer/crates/hir-def/src/nameres | |
FIXME: this case need more work to fix | ui/parser/issues/issue-68987-unmatch-issue-2 | |
FIXME: this case overlaps with code in TyCtxt::note_and_explain_type_err | rustc_middle/src/ty/diagnostics rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME: this code is not covered in tests | tools/rust-analyzer/crates/hir/src/lib tools/rust-analyzer/crates/hir/src/lib tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME: this condition seems wrong: it will pass when both types are not | rustc_codegen_gcc/src/builder | |
FIXME: this could be *much* more efficient | tools/rustfmt/src/macros | |
FIXME: this could include parameters, but `HirDisplay` prints too much info | tools/rust-analyzer/crates/ide/src/inlay_hints/closing_brace | |
FIXME: this could use a better heuristic, like just checking | rustc_trait_selection/src/error_reporting/traits/fulfillment_errors | |
FIXME: this doesn't account for trivial derefs, but works as a first | rustc_trait_selection/src/error_reporting/traits/fulfillment_errors | |
FIXME: this doesn't cover `--set` flags yet | bootstrap/src/core/config/config | |
FIXME: this doesn't quite work for `Iterator::collect` | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME: this doesn't really belong in `associated_item` (maybe `variant_field` is better?) | rustdoc/passes/collect_intra_doc_links | |
FIXME: this doesn't respect `#[allow(..)]` on the item itself | rustc_lint/src/nonstandard_style | |
FIXME: this doesn't test as much as I'd like; ideally it would have these query too | rustdoc/task-lists | |
FIXME: this doesn't work due to freestrings/jsonpath/issues/91 | rustdoc-json/impls/auto | |
FIXME: this doesn't work well with macros | tools/rust-analyzer/crates/ide-assists/src/handlers/extract_function | |
FIXME: this doesn't work with recursive subpats (`&mut &mut <err>`) | rustc_parse/src/parser/pat | |
FIXME: this doesn't work yet | ui/specialization/specialization-supertraits | |
FIXME: this exposes the provenance, which shouldn't be necessary | rustc_codegen_ssa/src/mir/rvalue rustc_codegen_ssa/src/mir/rvalue | |
FIXME: this feels, like, super dubious | rustc_hir_typeck/src/method/confirm | |
FIXME: this field makes Context extra-weird about unwind safety | core/src/task/wake | |
FIXME: this function should not suggest the `foo` function | ui/stability-attribute/issue-109177 | |
FIXME: this happens with macro calls. Need to figure out why the stmt | rustc_hir_typeck/src/fn_ctxt/suggestions rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME: this has false negatives, but I do not want to deal with 'static/const promotion just yet | rustc_lint/src/dangling | |
FIXME: this impl is concise, but is also slow for long lists or many threads | std/src/sync/once_lock | |
FIXME: this implementation is insufficiently robust to replace bootstrap's clean `rm_rf` | build_helper/src/fs/mod | |
FIXME: this information should be gotten by checking the linker flavor | bootstrap/src/utils/helpers | |
FIXME: this is a correctness problem but there's no suitable | tools/clippy/clippy_lints/src/non_copy_const tools/clippy/clippy_lints/src/non_copy_const | |
FIXME: this is a distinct type because we need to define `Encode`/`Decode` | rustc_type_ir/src/ty_kind | |
FIXME: this is a hack to get around chalk not being able to represent unevaluatable | tools/rust-analyzer/crates/hir-def/src/hir/type_ref tools/rust-analyzer/crates/hir-ty/src/lib tools/rust-analyzer/crates/hir-ty/src/lib | |
FIXME: this is a hack! | tools/miri/src/shims/native_lib | |
FIXME: this is a hacky function which should be removed | tools/rust-analyzer/crates/hir-def/src/hir | |
FIXME: this is a terrible abstraction-breaking hack | rustc_codegen_cranelift/src/intrinsics/simd | |
FIXME: this is a vague explanation for why this can't be a `get`, in | rustdoc/html/render/write_shared | |
FIXME: this is an unfortunate representation. rustdoc's logic around consts needs to be improved | rustdoc/clean/types | |
FIXME: this is bad! rust-lang/rust/issues/115666 | rustc_target/src/callconv/wasm rustc_target/src/callconv/wasm | |
FIXME: this is clearly a hack, and should be cleaned up | std/src/sys/thread_local/key/racy | |
FIXME: this is gonna need to be removed | rustc_trait_selection/src/traits/mod | |
FIXME: this is horribly inefficient. I bet there's a cool algorithm to diff trees properly | tools/rust-analyzer/crates/ide-db/src/syntax_helpers/tree_diff | |
FIXME: this is incorrect for some byte values | core/benches/ascii | |
FIXME: this is not entirely correct, as the lifetimes from borrowed params will | rustc_hir_analysis/src/check/mod | |
FIXME: this is not how we should get a mod path here | tools/rust-analyzer/crates/hir/src/attrs | |
FIXME: this is not totally accurate, but mostly works | rustc_resolve/src/late/diagnostics | |
FIXME: this is obviously suboptimal since the name can already be used | rustc_hir_analysis/src/check/compare_impl_item | |
FIXME: this is only mutation of UnstableOptions here, move into | rustc_session/src/config | |
FIXME: this is probably not correct for multi-line Rewrites. we should | tools/rustfmt/src/expr | |
FIXME: this is ruled out for now but should work | ui/type-alias-impl-trait/type-alias-impl-trait-fn-type | |
FIXME: this is showing error messages for parts of the code that are not | rustdoc/html/render/span_map | |
FIXME: this is still a lossy conversion and there should probably | rustdoc/html/format | |
FIXME: this is technically incorrect (see `write_shared`) | run-make/emit-shared-files/rmake | |
FIXME: this is wasteful, but want to do a perf run to see how slow it is | rustc_middle/src/ty/relate | |
FIXME: this is wrong for const eval, it should return 2 in some | tools/rust-analyzer/crates/hir-ty/src/mir/eval/shim | |
FIXME: this is wrong in multiple ways, subst is empty, and we emit it even for builtin deref (note that | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: this is wrong when compiler.host != build, but we don't support that today | bootstrap/src/core/build_steps/compile | |
FIXME: this item should only exist if this is linked into an executable | std/src/sys/pal/sgx/abi/mod | |
FIXME: this looks very wrong, libtest doesn't accept `-C` arguments and the quotes are fishy | bootstrap/src/core/build_steps/test | |
FIXME: this macro calls unwrap internally but is called in a panicking context! It's not | tools/clippy/src/driver | |
FIXME: this mapping is awkward and shouldn't exist. Refactor | tools/rust-analyzer/crates/rust-analyzer/src/handlers/request | |
FIXME: this may be a faulty span from libsyntax | tools/rustfmt/src/items | |
FIXME: this may not be exhaustive, but is sufficient for rustdocs current uses | rustdoc/visit_lib | |
FIXME: this method cannot be called in const-eval yet, as Box isn't | ui/consts/const_forget | |
FIXME: this miscompiles with optimizations, see <rust-lang/rust/issues/132898> | tools/miri/tests/pass/stacked-borrows/2phase | |
FIXME: this needs to account for the suggestion type | rustc_errors/src/emitter | |
FIXME: this never was about ABI and now this dump arg is confusing | rustc_passes/src/layout_test | |
FIXME: this only lists trait bounds from the item defining the type | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: this over-synchronizes; a more precise approach would be to | tools/miri/src/shims/unix/unnamed_socket | |
FIXME: this part is specific to HTML so it'd be nice to remove it from the common code | rustdoc/formats/cache | |
FIXME: this partially overlaps with `find_impl_block_*` | tools/rust-analyzer/crates/ide-assists/src/utils | |
FIXME: this partially overlaps with `find_struct_impl` | tools/rust-analyzer/crates/ide-assists/src/utils | |
FIXME: this passes if we use `<(), ()>` here instead of `<(), Opaque>` | ui/specialization/min_specialization/impl-on-opaque2 | |
FIXME: this probably shouldn't have a suffix | run-make/emit-shared-files/rmake | |
FIXME: this quite an incorrect way to go about doing this :-) | tools/rust-analyzer/crates/ide-assists/src/handlers/extract_function | |
FIXME: this really ought to be caught at macro definition | rustc_expand/src/mbe/transcribe | |
FIXME: this really ought to be caught at macro definition time... It | rustc_expand/src/mbe/transcribe | |
FIXME: this really should be a fix for diagnostic, rather than an assist | tools/rust-analyzer/crates/ide-assists/src/handlers/fix_visibility | |
FIXME: this really should be handled at some earlier stage. Our | rustc_trait_selection/src/errors | |
FIXME: this should *likely* use `offset_from`, but more | rustc_arena/src/lib rustc_arena/src/lib rustc_arena/src/lib | |
FIXME: this should also consider blanket impls (`impl<T> X for T`). Unfortunately | rustdoc/passes/collect_intra_doc_links | |
FIXME: this should also suggest a function pointer, as the closure is non-capturing | ui/suggestions/unnamable-types | |
FIXME: this should be 3 | tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests | |
FIXME: this should be LineWriter or BufWriter depending on the state of | std/src/io/stdio | |
FIXME: this should be a #[marker] and have another blanket impl for T: TrustedFused | core/src/iter/traits/marker | |
FIXME: this should be a diagnostic | tools/rust-analyzer/crates/ide-assists/src/handlers/convert_into_to_from | |
FIXME: this should be more like //@ needs-subprocesses | ui/feature-gates/version_check | |
FIXME: this should be much more fancy and support | tools/rust-analyzer/crates/parser/src/parser | |
FIXME: this should be removed once we rename Aarch64 neon to asimd | tools/rustfmt/tests/source/cfg_if/detect/arch/aarch64 tools/rustfmt/tests/target/cfg_if/detect/arch/aarch64 | |
FIXME: this should call `va_end`, but there's no clean way to | core/src/ffi/va_list | |
FIXME: this should compile | ui/coroutine/drop-tracking-parent-expression ui/coroutine/parent-expression | |
FIXME: this should not be public, but interning currently needs access to it | rustc_const_eval/src/interpret/memory rustc_const_eval/src/interpret/memory | |
FIXME: this should not be represented with a DST slice but rather with | core/src/ffi/c_str | |
FIXME: this should not be required, all attributes on an item should have a | tools/rust-analyzer/crates/hir-def/src/nameres/collector | |
FIXME: this should not suggest `mut` if we can detect that the variable is not | tools/clippy/clippy_lints/src/let_if_seq | |
FIXME: this should probably be a UI test instead of a run-make test, but I *cannot* find a way to | run-make/issue-125484-used-dependencies/rmake | |
FIXME: this should probably be extended to also account for `FO0` → `FOO` and unicode | rustc_errors/src/emitter | |
FIXME: this should probably use `args` from `FnDef` | rustc_privacy/src/lib | |
FIXME: this should produce a warning, because the attribute says 1.58 and the cargo.toml file | tools/clippy/tests/ui-cargo/cargo_rust_version/fail_file_attr/src/main | |
FIXME: this should really be using the edition of the method name's span, in case it | tools/rust-analyzer/crates/hir-ty/src/method_resolution tools/rust-analyzer/crates/hir-ty/src/method_resolution | |
FIXME: this should return a nonzero value if this call does result in switching to another thread | tools/miri/src/shims/windows/foreign_items | |
FIXME: this should return real HANDLEs when io support is added | tools/miri/src/shims/windows/foreign_items | |
FIXME: this should say that it was skipped (maybe an allowed by default lint?) | rustdoc-ui/intra-doc/errors | |
FIXME: this should use `Trace` to avoid duplication in `source_map` below | tools/rust-analyzer/crates/hir-def/src/attr | |
FIXME: this should use deref_pointer_as, but CONSOLE_SCREEN_BUFFER_INFO is not in std | tools/miri/src/shims/windows/foreign_items | |
FIXME: this shouldn't fail during name resolution either | ui/use/use-keyword | |
FIXME: this skips comments between the extern keyword and the opening | tools/rustfmt/src/items | |
FIXME: this struct is used solely by #[derive] to | core/src/cmp | |
FIXME: this take is completely unneeded, and just is here to make borrow checker | tools/rust-analyzer/crates/hir-ty/src/infer/closure | |
FIXME: this test current now do nothing | tools/rust-analyzer/crates/hir-ty/src/tests/macros | |
FIXME: this test does succeed, but takes quite a while: 90 seconds in | tools/rust-analyzer/crates/hir-def/src/nameres/collector | |
FIXME: this test fails on arm-android because the NDK version 14 is too old | ui/simd/intrinsic/float-math-pass | |
FIXME: this walks full tests tree, even if we have something to ignore | tools/compiletest/src/lib | |
FIXME: this way of making sure that the cache is large enough is | tools/rustfmt/tests/source/cfg_if/detect/cache tools/rustfmt/tests/source/cfg_if/detect/cache tools/rustfmt/tests/target/cfg_if/detect/cache tools/rustfmt/tests/target/cfg_if/detect/cache | |
FIXME: this will turn !() into ! alone | rustdoc/intra-doc/disambiguators-removed | |
FIXME: this would with in 24bytes but layout optimizations are not smart enough | tools/miri/src/machine | |
FIXME: time_llvm_passes support - does this use a global context or | rustc_codegen_ssa/src/back/write | |
FIXME: to be implemented | tools/rust-analyzer/crates/mbe/src/expander/transcriber | |
FIXME: to make things simpler for now, limit this to the host and target where we know | bootstrap/src/core/build_steps/compile | |
FIXME: todo | ui/macros/stringify ui/macros/stringify ui/macros/stringify ui/macros/stringify ui/macros/stringify | |
FIXME: tool modules can be shadowed by actual modules | tools/rust-analyzer/crates/hir-def/src/nameres/attr_resolution | |
FIXME: trait object type elisions | tools/rust-analyzer/crates/ide/src/inlay_hints | |
FIXME: translation requires list formatting (for `expect`) | rustc_parse/src/parser/diagnostics | |
FIXME: try collecting these constraints on the outlives suggestion | rustc_borrowck/src/diagnostics/region_errors | |
FIXME: try removing `--exclude-should-panic` argument | rustc_codegen_gcc/build_system/src/test | |
FIXME: try to fix `can_change_type` to make it work in this case | tools/clippy/clippy_lints/src/methods/unnecessary_to_owned | |
FIXME: turn on nrvo then check-not: @llvm.memcpy | codegen/nrvo | |
FIXME: u128 started to break compilation with disabled CI | assembly/nvptx-kernel-abi/nvptx-kernel-args-abi-v7 | |
FIXME: uncomment this once we resolve to usages to extern crate declarations | tools/rust-analyzer/crates/ide/src/rename tools/rust-analyzer/crates/ide/src/rename | |
FIXME: unconditionally use `Rc::new_zeroed` once it is stable (#63291) | rustc_index/src/bit_set rustc_index/src/bit_set | Closed |
FIXME: undef bytes can just be initialized with the same value as the | codegen/slice-init | |
FIXME: unify function_visibility and const_visibility? | tools/rust-analyzer/crates/hir-def/src/db | |
FIXME: unreachable warning current isn't emitted | rustc_hir_typeck/src/fn_ctxt/checks | |
FIXME: update to a visitor-based implementation | tools/clippy/clippy_lints/src/uninit_vec | |
FIXME: use | rustc_codegen_llvm/src/intrinsic | |
FIXME: use `EarlyBinder` in `self.children` | rustc_trait_selection/src/traits/specialize/specialization_graph | |
FIXME: use `Range` once that implements `Copy` | std/src/sys/pal/unix/stack_overflow | |
FIXME: use `ceil_char_boundary` from `std::str` when it gets stable | tools/rust-analyzer/crates/ide/src/extend_selection | |
FIXME: use `core::convert::absurd` here instead, once it's merged | core/src/primitive_docs | |
FIXME: use `emit_node_lint` when `#[primary_span]` is added | rustc_lint/src/dangling | |
FIXME: use `expose_provenance` once we figure out whether function pointers have meaningful | rustc_mir_transform/src/shim | |
FIXME: use `obligation.predicate.kind()...trait_ref.self_ty()` to see if we have `()` | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME: use `rustfmt --config-path` once | tools/rust-analyzer/crates/rust-analyzer/src/handlers/request | |
FIXME: use a better name here | tools/rust-analyzer/crates/ide/src/lib | |
FIXME: use a let chain | rustc_parse_format/src/lib | |
FIXME: use a snippet completion instead of this hack here | tools/rust-analyzer/crates/ide/src/typing | |
FIXME: use an RAII util or closure for indenting | tools/rustfmt/src/visitor | |
FIXME: use beta or a user-specified rustdoc instead of | tools/compiletest/src/runtest | |
FIXME: use constant folding | tools/clippy/clippy_utils/src/lib | |
FIXME: use cx.layout_of(ty).llvm_type() ? | rustc_codegen_gcc/src/intrinsic/simd | |
FIXME: use def_kind | rustc_trait_selection/src/error_reporting/infer/nice_region_error/util | |
FIXME: use direct symbol comparison for register names | rustc_target/src/asm/mod | |
FIXME: use existing printing routines to print the function signature | rustc_mir_transform/src/function_item_references | |
FIXME: use lang items to determine if it is std type or user defined | tools/rust-analyzer/crates/ide-assists/src/handlers/extract_function | |
FIXME: use llvm-nm to generate export list | rustc_codegen_ssa/src/back/linker | |
FIXME: use non-lossy conversion | tools/miri/src/shims/windows/foreign_items | |
FIXME: use something like ImplKind in JSON? | rustdoc/json/conversions | |
FIXME: use swap_unchecked here (rust-lang/rust/pull/88540#issuecomment-944344343) | core/src/slice/mod | |
FIXME: use syntax::make & mutable AST apis instead | tools/rust-analyzer/crates/ide-assists/src/utils | |
FIXME: use the `_runnable` here | tools/rust-analyzer/crates/rust-analyzer/src/lsp/to_proto | |
FIXME: use the crate's edition for parsing | tools/rust-analyzer/crates/ide-assists/src/handlers/extract_expressions_from_format_string | |
FIXME: use this for other modes too, for perf? | tools/compiletest/src/runtest | |
FIXME: used for fixing up the toolchain sysroot, should be removed and done differently | tools/rust-analyzer/crates/base-db/src/input | |
FIXME: using host floats to work around rust-lang/miri/issues/2468 | tools/miri/src/intrinsics/simd | |
FIXME: using the `Debug` impl here isn't ideal | rustc_passes/src/abi_test rustc_passes/src/layout_test | |
FIXME: validation errors are not handled here | tools/rust-analyzer/crates/syntax/src/lib | |
FIXME: vector ABI not yet supported | rustc_codegen_llvm/src/va_arg | |
FIXME: visit the template exhaustively | rustc_ast/src/mut_visit | |
FIXME: visit the ty to see if there's any closure involved, and if there is | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME: vsx also supports integers?: rust-lang/rust/pull/131551#discussion_r1862535963 | rustc_target/src/asm/powerpc | |
FIXME: wait less | tools/miri/tests/pass-dep/libc/libc_pthread_cond_timedwait tools/miri/tests/pass-dep/libc/libc_pthread_cond_timedwait_isolated | |
FIXME: walk path segment with `path_segment.hir_id` parent | rustc_ast_lowering/src/index | |
FIXME: warning because it is not immediately followed by break | tools/clippy/tests/ui/mut_range_bound | |
FIXME: wasm is disabled due to <rust-lang/rust/issues/115666> | ui/abi/compatibility | |
FIXME: we are currently missing some infra here (per-linker-flavor CRT objects) | rustc_codegen_ssa/src/back/link | |
FIXME: we are skipping auto traits for now, but might revisit this in the future | rustc_const_eval/src/interpret/traits | |
FIXME: we can try to recursively `dtorck_constraint_on_ty` | rustc_trait_selection/src/traits/query/dropck_outlives | |
FIXME: we can't use a reference here because to convert `try!` to `?` we | tools/rustfmt/src/chains | |
FIXME: we could accept `RUST_MIN_STACK=64MB`, perhaps? | rustc_interface/src/util | |
FIXME: we could extend the lint to include such cases | tools/clippy/tests/ui/let_if_seq | |
FIXME: we could look up assoc items by the input and propose those in completion | tools/rust-analyzer/crates/ide-db/src/imports/import_assets | |
FIXME: we could potentially look at the impl's bounds to not point at bounds that | rustc_hir_analysis/src/check/compare_impl_item | |
FIXME: we currently don't return `Delimiter::Invisible` open/close delims. To fix | rustc_parse/src/parser/mod | |
FIXME: we do *not* check behind boxes, since creating a new box first creates it uninitialized | rustc_const_eval/src/interpret/validity | |
FIXME: we don't actually want to print all of these, since some are printed nicely directly as values inline in MIR | rustc_middle/src/mir/pretty | |
FIXME: we don't need to collect here | tools/rustfmt/src/items | |
FIXME: we don't need to look at all binaries, only files that have been modified in this branch | tools/tidy/src/bins | |
FIXME: we drop any comments here, even though it's a silly place to put | tools/rustfmt/src/types | |
FIXME: we have to request implied features here since | rustc_codegen_gcc/src/gcc_util rustc_codegen_llvm/src/llvm_util | |
FIXME: we look up both allocations twice here, once before for the `check_ptr_access` | rustc_const_eval/src/interpret/memory | |
FIXME: we may suggest array::repeat instead | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME: we may want to emit a single type variable for all instance of type fields? | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
FIXME: we might want to check that using the param indent | tools/rustfmt/src/items | |
FIXME: we need to fetch all locals declared in the parameter here | tools/rust-analyzer/crates/ide-assists/src/handlers/inline_call | |
FIXME: we overzealously erase the entire local, because that's easier to | rustc_mir_transform/src/known_panics_lint | |
FIXME: we probably also want some sort of cross-infcx cache here to | rustc_infer/src/traits/project | |
FIXME: we probably should only try to unify abstract constants | rustc_trait_selection/src/traits/fulfill | |
FIXME: we probably should re-think `token_tree_to_syntax_node` interfaces | tools/rust-analyzer/crates/syntax-bridge/src/lib | |
FIXME: we require two bounds (`where Self: 'a, Self: 'b`) when we should only require one | ui/generic-associated-types/self-outlives-lint ui/generic-associated-types/self-outlives-lint | |
FIXME: we should assert the sig is &T here... there's no reason for this to be fallible | rustc_hir_typeck/src/autoderef | |
FIXME: we should be able to suggest borrowing both side | ui/binop/borrow-suggestion-109352-2 | |
FIXME: we should be using a derived_id for the Anchors here | rustdoc/html/render/print_item | |
FIXME: we should call the said function, but since its name is going to break in the next rustc version | tools/rust-analyzer/crates/hir-ty/src/mir/eval | |
FIXME: we should check `self_ty` against the receiver | rustc_trait_selection/src/error_reporting/infer/nice_region_error/static_impl_trait | |
FIXME: we should check what kind of pattern we are in and filter accordingly | tools/rust-analyzer/crates/ide-completion/src/completions/pattern | |
FIXME: we should do something else so that it works even on crate foreign | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME: we should figure out a more generic version of doing this, ideally in cargo itself | rustc_trait_selection/src/error_reporting/infer/need_type_info | |
FIXME: we should get this from caller | tools/rust-analyzer/crates/hir-ty/src/mir | |
FIXME: we should guide this to look up the path locally, or from the same crate again? | tools/rust-analyzer/crates/hir-def/src/find_path | |
FIXME: we should instead get the span including the `->` and suggest an | tools/clippy/clippy_lints/src/unnecessary_wraps | |
FIXME: we should move the field error reporting code somewhere else | rustc_hir_typeck/src/expr | |
FIXME: we should not need this hack: this is required because both _mm_fcmadd_sch | rustc_codegen_gcc/src/intrinsic/llvm | |
FIXME: we should not yield here once blocking is implemented | tools/miri/tests/pass-dep/libc/libc-pipe tools/miri/tests/pass-dep/libc/libc-socketpair | |
FIXME: we should only show the deep one | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/type_mismatch | |
FIXME: we should point at the lifetime | rustc_trait_selection/src/error_reporting/infer/nice_region_error/mismatched_static_lifetime | |
FIXME: we should set last_error, but to what? | tools/miri/src/shims/windows/foreign_items | |
FIXME: we should show error for this, as `Y` is not copy | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/moved_out_of_ref | |
FIXME: we should suggest `fn foo(t: impl Trait<A: Bound>)` instead | rustc_trait_selection/src/error_reporting/traits/suggestions | |
FIXME: we should use the program name if the thread name is not set | tools/miri/src/shims/unix/thread | |
FIXME: we should yield here once blocking is implemented | tools/miri/tests/pass-dep/libc/libc-pipe tools/miri/tests/pass-dep/libc/libc-pipe tools/miri/tests/pass-dep/libc/libc-socketpair tools/miri/tests/pass-dep/libc/libc-socketpair | |
FIXME: we shouldn't have two errors here, only occurs when using `-Zdeduplicate-diagnostics=no` | ui/error-codes/E0789 | |
FIXME: we shouldn't need to re-resolve the macro here just to get the unresolved error! | tools/rust-analyzer/crates/hir-def/src/nameres/collector | |
FIXME: we use a probe here as the `BestObligation` visitor does not | rustc_trait_selection/src/solve/fulfill | |
FIXME: we want an inclusive take_while (stops after a false predicate, but | tools/miri/src/concurrency/weak_memory | |
FIXME: we would want to call `resolve_vars_if_possible` on `ty` before suggesting | rustc_trait_selection/src/error_reporting/infer/note_and_explain | |
FIXME: we'll need a better message which takes into account | rustc_trait_selection/src/error_reporting/traits/fulfillment_errors | |
FIXME: we'll want better handling of this in the future for the sake of tools | rustc_span/src/lib | |
FIXME: we're ignoring safety here. To be more correct, if we have one FnDef and one Closure | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | |
FIXME: we're not able to read excluded files (which is most of them because | tools/rust-analyzer/crates/hir-expand/src/builtin/fn_macro | |
FIXME: what about Windows? Are default ACLs executable? | tools/rust-installer/src/util | |
FIXME: what about non-staged API items that are deprecated? | rustdoc/clean/types | |
FIXME: what amount of WF checking do we need for reservation impls? | rustc_hir_analysis/src/check/wfcheck | |
FIXME: what follows are general suggestions, but we'd want to perform some | rustc_resolve/src/late/diagnostics | |
FIXME: what to do about lifetime params? -> return PolyFnSig | tools/rust-analyzer/crates/hir-ty/src/lib | |
FIXME: when support for #[link_name] is implemented, ensure that the import names | rustc_codegen_ssa/src/back/archive | |
FIXME: when the corresponding `assert` in `tree_borrows/mod.rs` finally | tools/miri/src/borrow_tracker/tree_borrows/tree | |
FIXME: when we add support for ordinals, figure out if we need to do anything | rustc_codegen_ssa/src/back/link | |
FIXME: where predicates should be on next lines | tools/rust-analyzer/crates/ide-assists/src/handlers/generate_function tools/rust-analyzer/crates/ide-assists/src/handlers/generate_function | |
FIXME: why does this code check if it *shouldn't* persist doctests | rustdoc/doctest | |
FIXME: why is this condition necessary? It was adding in #33625 but I | rustc_metadata/src/creader | Closed |
FIXME: why is this needed? | tools/rustfmt/tests/source/configs/indent_style/block_call tools/rustfmt/tests/target/configs/indent_style/block_call | |
FIXME: why is this using references::find_defs, this should use ide_db::search | tools/rust-analyzer/crates/ide/src/runnables | |
FIXME: with `inherent_associated_types` this is allowed, but our `lower_partly_resolved_path()` | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME: within_limit should support this, instead of us having to extract the error | tools/rust-analyzer/crates/hir-def/src/expander | |
FIXME: work harder -- there are more possibilities for mapping | tools/unicode-table-generator/src/raw_emitter | |
FIXME: would be nice to be able to check both the class and the href at the same time so | rustdoc/jump-to-def-pats rustdoc/jump-to-def-prelude-types | |
FIXME: would really like a suggestion here too | ui/suggestions/dont-suggest-ref/duplicate-suggestions ui/suggestions/dont-suggest-ref/duplicate-suggestions ui/suggestions/dont-suggest-ref/simple ui/suggestions/dont-suggest-ref/simple ui/suggestions/dont-suggest-ref/simple | |
FIXME: write st_fstype field once libc is updated | tools/miri/src/shims/unix/fs | |
FIXME: wrong for manual impls of `FnOnce` | tools/rust-analyzer/crates/hir-ty/src/mir/eval/shim | |
FIXME: wrong, should be u32 | tools/rust-analyzer/crates/hir-ty/src/tests/regression | |
FIXME: ~^ NOTE an unsafe function restricts its caller, but its body is safe by default | ui/unsafe/unsafe_op_in_unsafe_fn/wrapping-unsafe-block-sugg | |
FIXME? | tools/rust-analyzer/crates/hir-def/src/nameres/path_resolution | |
FIXME? Other potential candidate methods: `as_ref` and | rustc_hir_typeck/src/demand | |
FIXME?: We could provide text edit to insert braces for closures with non-block body | tools/rust-analyzer/crates/ide/src/inlay_hints/closure_ret | |
FIXME?: `bar` here expands before `stringify` has a chance to expand | ui/attributes/key-value-expansion-on-mac | |
FIXMEkhuey ideally we would check that *either* scope has a discriminator | codegen/debuginfo-proc-macro/mir_inlined_twice_var_locs | |
For now, this doesn't resolve macros (FIXME) and cannot resolve Impl, as we | rustc_resolve/src/effective_visibilities | |
For this we utilize mutable trees, which is a HACK, but it works | tools/rust-analyzer/crates/ide/src/inlay_hints/adjustment | |
HACK assert_eq! would panic here because it stores the LHS and RHS in two locals | ui/overloaded/overloaded-autoderef | |
HACK(#114936): `WF(sig)` does not imply `WF(normalized(sig))` | rustc_borrowck/src/type_check/mod | Closed |
HACK(#69396): Stashing and stealing diagnostics does not interact | rustc_hir_analysis/src/collect/type_of | Closed |
HACK(#82501): on Windows, the tools directory gets added to PATH when running tests, and | bootstrap/src/core/build_steps/tool | Closed |
HACK(-Ztrait-solver=next): In the *old* trait solver, we must eagerly | rustc_hir_typeck/src/closure | |
HACK(Ezrashaw): there is no way to split a markdown header over multiple lines | tools/tidy/src/style | |
HACK(Urgau): This shouldn't be necessary | rustc_resolve/src/macros | |
HACK(async_closures): For async closures, prefer `AsyncFn*` | rustc_hir_typeck/src/callee | |
HACK(compiler-errors): Constants that are gathered into Body.required_consts | rustc_borrowck/src/type_check/mod | |
HACK(compiler-errors): Doesn't actually matter what self | rustdoc/clean/mod | |
HACK(compiler-errors): This macro rule can only take a fake path | rustc_middle/src/ty/parameterized | |
HACK(compiler-errors): We don't actually consider the implications | rustc_hir_typeck/src/demand | |
HACK(eddyb) Avoid having RustCall on closures | rustc_mir_build/src/builder/mod | |
HACK(eddyb) Bypass checks due to reborrows being in | rustc_hir_typeck/src/op | |
HACK(eddyb) LLVM inserts `llvm.assume` calls to preserve align attributes | rustc_codegen_llvm/src/llvm_util | |
HACK(eddyb) Separate encoding a success value (`Ok(output)`) | proc_macro/src/bridge/client | |
HACK(eddyb) `lint_if_path_starts_with_module` needs at least | rustc_resolve/src/imports rustc_resolve/src/imports | |
HACK(eddyb) at least for definitions of/calls to `Instance`s | rustc_middle/src/ty/layout | |
HACK(eddyb) avoid trashing `cached_typeck_results` when we're | rustc_lint/src/late | |
HACK(eddyb) boxed to avoid moving around a large struct by-value | rustc_middle/src/ty/print/pretty | |
HACK(eddyb) copy of `path_append` to avoid | rustc_middle/src/ty/print/pretty | |
HACK(eddyb) don't use `panic::catch_unwind` in a panic | proc_macro/src/bridge/server | |
HACK(eddyb) get rid of `def_path_str` and/or pass `Namespace` explicitly always | rustc_middle/src/ty/print/pretty | |
HACK(eddyb) ignore lifetimes found shallowly in `args` | rustc_type_ir/src/outlives | |
HACK(eddyb) limited to `FmtPrinter` because of `binder_depth` | rustc_middle/src/ty/print/pretty | |
HACK(eddyb) limited to `FmtPrinter` because of `region_highlight_mode` | rustc_middle/src/ty/print/pretty | |
HACK(eddyb) manual impl avoids `Default` bound on `T` | rustc_data_structures/src/transitive_relation | |
HACK(eddyb) manual impl avoids `Default` bounds on `K` and `V` | rustc_data_structures/src/snapshot_map/mod | |
HACK(eddyb) maybe move this in a more central location | rustc_trait_selection/src/error_reporting/infer/nice_region_error/placeholder_error | |
HACK(eddyb) pretend the `enum` field (discriminant) | rustc_abi/src/callconv | |
HACK(eddyb) print the path similarly to how `FmtPrinter` prints it | rustc_symbol_mangling/src/legacy rustc_symbol_mangling/src/legacy | |
HACK(eddyb) sets `RUSTC_BOOTSTRAP=1` so Cargo can accept nightly features | run-make/x86_64-fortanix-unknown-sgx-lvi/rmake | |
HACK(eddyb) should get the original `Span` | rustc_hir_typeck/src/fn_ctxt/mod | |
HACK(eddyb) the full mangling is only in `.stderr` because we can normalize | ui/symbol-names/const-generics-structural-demangling ui/symbol-names/const-generics-structural-demangling | |
HACK(eddyb) these are here to allow `Self::$name` to work below | proc_macro/src/bridge/server | |
HACK(eddyb) this abstraction is used with `for<'a> fn(BridgeConfig<'a>) | proc_macro/src/bridge/selfless_reify | |
HACK(eddyb) this bypasses `path_append`'s prefix printing to avoid | rustc_middle/src/ty/print/pretty | |
HACK(eddyb) this duplicates `FmtPrinter`'s `path_generic_args` | rustc_middle/src/ty/print/pretty | |
HACK(eddyb) this emulates the old `visit_projection_elem`, this | rustc_codegen_ssa/src/mir/analyze | |
HACK(eddyb) this mimics `path_append` | rustc_symbol_mangling/src/v0 | |
HACK(eddyb) this provides the correct generics for repeat | rustc_hir_analysis/src/collect/generics_of | |
HACK(eddyb) this provides the correct generics when | rustc_hir_analysis/src/collect/generics_of | |
HACK(eddyb) this relies on using the `fmt` interface to get | rustc_symbol_mangling/src/legacy | |
HACK(eddyb) this shows up for `self` & `super`, which | rustc_resolve/src/imports | |
HACK(eddyb) unclear how good this is, but keeping `$crate` | rustc_resolve/src/build_reduced_graph | |
HACK(eddyb) we need to pad the PID, strange as it may seem, as its | rustc_data_structures/src/profiling | |
HACK(eddyb) work around the fact that verbosely demangled stack traces | ui/backtrace/backtrace | |
HACK(eddyb): `Tag` enum duplicated between the | proc_macro/src/bridge/rpc proc_macro/src/bridge/rpc | |
HACK(eddyb): only needed because `impl Trait` can't be | ui/impl-trait/example-calendar | |
HACK(estebank): find a better way to figure out that this was a | rustc_resolve/src/late/diagnostics | |
HACK(estebank): we remove the pre-existing | rustc_trait_selection/src/error_reporting/traits/fulfillment_errors | |
HACK(hkmatsumoto): For impls of primitive types, we index them | rustdoc/json/mod | |
HACK(jaic1): hide the `str` type behind a reference | rustc_symbol_mangling/src/v0 | |
HACK(japaric) needed for the implementation of `Vec::clone` during testing | alloc/src/slice | |
HACK(japaric) needed for the implementation of `vec!` macro during testing | alloc/src/slice | |
HACK(japaric): With cfg(test) `impl [T]` is not available, these three | alloc/src/slice | |
HACK(japaric): with cfg(test) the inherent `[T]::into_vec` method, which is | alloc/src/macros | |
HACK(japaric): with cfg(test) the inherent `[T]::to_vec` method, which is | alloc/src/string alloc/src/vec/mod | |
HACK(jynelson): the source of `DefKind::descr` only uses the DefId for | rustdoc/passes/collect_intra_doc_links | |
HACK(jynelson): trying to infer the type of `impl Trait` breaks `async-std` (and | rustc_privacy/src/lib | |
HACK(jynelson): trying to infer the type of `impl trait` breaks documenting | rustc_hir_analysis/src/check/check | |
HACK(min_const_generics): Forbid generic `Self` types | rustc_hir_analysis/src/hir_ty_lowering/mod | |
HACK(min_const_generics): If we encounter `Self` in an anonymous | rustc_resolve/src/ident | |
HACK(min_const_generics): self types also have an optional requirement to **not | rustc_hir/src/def | |
HACK(min_const_generics, generic_const_exprs): We | rustc_resolve/src/late | |
HACK(nox): This is inefficient but there is no nontemporal memcpy | rustc_codegen_ssa/src/traits/builder | |
HACK(nox): We iter on `b` and then `a` because `max_by_key` | rustc_abi/src/layout | |
HACK(oli-obk, compiler-errors): We should be comparing this against | rustc_hir_typeck/src/check | |
HACK(rustdoc): should not be sorting `CrateNum` or `DefIndex`, this will soon go away, too | rustdoc/html/render/search_index | |
HACK(topecongiro): we use `format_missing()` to extract a missing comment between | tools/rustfmt/src/missed_spans | |
HACK(type_alias_impl_trait): When moving an opaque type to hidden type mapping from the query to the current inferctxt | rustc_trait_selection/src/traits/query/type_op/mod | |
HACK: Avoid ICE when types with the same name with `derive`s are in the same scope | rustc_hir_analysis/src/errors/wrong_number_of_generic_args | |
HACK: Because we erase regions contained in the coroutine witness, we | rustc_ty_utils/src/needs_drop | |
HACK: Check the return type of function definitions for | rustc_trait_selection/src/traits/wf | |
HACK: For integer and float variables we have to manually look at all impls | rustc_middle/src/ty/context | |
HACK: For synthetic MIR bodies (async closures), use the def id of the HIR body | rustc_mir_transform/src/coverage/mod | |
HACK: For unnamed fields placeholders should have the same visibility as the actual | rustc_expand/src/expand | |
HACK: Given a closure in `T.method(|| f())`, where `fn f() -> U where U: 'static`, `T.method(f)` | tools/clippy/clippy_lints/src/eta_reduction | |
HACK: LLVM versions 19+ do not have the FPMR feature and treat it as always enabled | rustc_codegen_llvm/src/attributes | |
HACK: Macro expansion should not be done using "rollback and try another alternative" | tools/rust-analyzer/crates/mbe/src/expander/matcher | |
HACK: On subsequent recursions, we only care about bounds that don't | rustc_trait_selection/src/traits/select/mod | |
HACK: Pick the first trait def candidate for a fully | rustc_trait_selection/src/traits/project rustc_trait_selection/src/traits/project | |
HACK: Represent as tuple until we have something better | rustc_symbol_mangling/src/v0 | |
HACK: Since the commit script uses hard links, we can't actually tell if it was installed by x.py setup or not | bootstrap/src/bin/main | |
HACK: Syn uses `Span` from the proc_macro2 crate, and does not seem to reexport it | tools/clippy/tests/ui/auxiliary/proc_macro_attr | |
HACK: This impls is necessary so that the impl above is well-formed | ui/traits/next-solver/cycles/fixpoint-rerun-all-cycle-heads | |
HACK: This is not correct, since `predicate_self_type_to_point_at` might | rustc_hir_typeck/src/fn_ctxt/adjust_fulfillment_errors | |
HACK: This is still theoretically unsound. Goals can indirectly rely | rustc_trait_selection/src/traits/select/mod | |
HACK: This is to "unstabilize" the `transmute` intrinsic | tools/clippy/clippy_utils/src/qualify_min_const_fn | |
HACK: This is used to recover the NodeId of an elided lifetime | rustc_hir/src/def | |
HACK: This shouldn't be necessary... We can remove this when we actually | rustc_borrowck/src/type_check/mod | |
HACK: We bail with overflow if the response would have too many non-region | rustc_next_trait_solver/src/solve/eval_ctxt/canonical | |
HACK: We can use this substitution for the function because the function itself doesn't | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
HACK: We eagerly instantiate some bounds to report better errors for them | rustc_hir_analysis/src/check/check | |
HACK: We may have overlapping `dyn Trait` built-in impls and | rustc_ty_utils/src/instance | |
HACK: We specifically don't want the (opaque) error from tainting our | rustc_hir_typeck/src/writeback | |
HACK: We want to assert that the signature of the source fn is | rustc_borrowck/src/type_check/mod | |
HACK: Work around mut borrow | tools/rustfmt/src/comment | |
HACK: `'static` suggestions will never sonflict, emit only those for now | rustc_lint/src/lints | |
HACK: `async fn() -> Self` in traits is "ok" | rustc_lint/src/opaque_hidden_inferred_bound | |
HACK: `builder` runs this step with all paths if no path was passed | bootstrap/src/core/build_steps/setup | |
HACK: `impl Trait<Assoc = impl Trait2>` from an RPIT is "ok" | rustc_lint/src/opaque_hidden_inferred_bound | |
HACK: `rhs_ty` is a general inference variable with no clue at all at this | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
HACK: `true` if this is an `if` expression in an `else if` | tools/rustfmt/src/expr | |
HACK: a neater way would be preferable | rustc_parse/src/parser/pat | |
HACK: constants are used in arrays, even if the types don't match | rustc_symbol_mangling/src/v0 | |
HACK: currently tool stages are off-by-one compared to compiler stages, i.e. if | bootstrap/src/core/build_steps/test | |
HACK: drop_in_place creates tight monomorphization loops. Give | rustc_monomorphize/src/collector | |
HACK: here we use `meta_result` to pass `TtIter` back to caller because | tools/rust-analyzer/crates/mbe/src/expander/matcher tools/rust-analyzer/crates/mbe/src/expander/matcher | |
HACK: in order to not mistakenly assume that `[PhantomData<T>; N]` requires drop glue | rustc_ty_utils/src/needs_drop | |
HACK: instead of checking if each hunk is empty, this only checks if the whole input is empty. we should be smarter about this so we don't treat added or removed output as normalized | tools/compiletest/src/runtest | |
HACK: low-churn fix for #79459 while we wait for a trait normalization fix | rustdoc/clean/mod | Closed |
HACK: on some cases (`ui/liveness/liveness-issue-2163.rs`) the | rustc_hir_typeck/src/fn_ctxt/checks | Closed |
HACK: opaque types will match anything for which their bounds hold | rustc_hir_typeck/src/method/probe | |
HACK: pick the first `did` as the `did` of the trait object. Someone | rustdoc/clean/mod | |
HACK: pprust breaks strings with newlines when the type | rustc_resolve/src/def_collector | |
HACK: rather than pull in `tempdir`, use the one that cargo has conveniently created for us | bootstrap/src/core/builder/tests | |
HACK: rustc will emit "crate ... required to be available in rlib format, but | tools/miri/src/bin/miri | |
HACK: special case for `warnings` rustc lint | tools/rust-analyzer/crates/rust-analyzer/src/diagnostics/to_proto tools/rust-analyzer/crates/rust-analyzer/src/diagnostics/to_proto | |
HACK: squeeze out the span between the identifier and the parameters | tools/rustfmt/src/types | |
HACK: subst for `branch()` coincides with that for `Try` because `branch()` itself | tools/rust-analyzer/crates/hir/src/source_analyzer | |
HACK: subst for `index()` coincides with that for `Index` because `index()` itself | tools/rust-analyzer/crates/hir/src/source_analyzer | |
HACK: subst for `poll()` coincides with that for `Future` because `poll()` itself | tools/rust-analyzer/crates/hir/src/source_analyzer | |
HACK: subst for all methods coincides with that for their trait because the methods | tools/rust-analyzer/crates/hir/src/source_analyzer tools/rust-analyzer/crates/hir/src/source_analyzer | |
HACK: tests are allowed to use a revision name as a check prefix | tools/compiletest/src/runtest | |
HACK: the filecheck tool normally fails if a prefix is defined but not used. However | tools/compiletest/src/runtest | |
HACK: this check is extremely dumb, but we don't really need it to be smarter since this should only happen in the test suite anyway | rustc_driver_impl/src/lib | |
HACK: this should also fall through to the hidden type check below, but the original | rustc_hir_analysis/src/check/check | |
HACK: this test passes only because this is a const fn that is written to metadata | ui/const_prop/ice-assert-fail-div-by-zero | |
HACK: try to link to std instead where possible | rustdoc/clean/types | |
HACK: we are trying to normalize the param-env inside *itself*. The problem is that | rustc_trait_selection/src/traits/mod | |
HACK: we override the default safety instead of generating attributes from the ether | rustc_ast_lowering/src/delegation | |
HACK: we use find_ancestor_inside to properly suggest elided spans in paths | rustc_ast_lowering/src/path rustc_resolve/src/late | |
JUSTIFICATION: necessary use of crate_types directly (see FIXME below) | rustc_session/src/session | |
Linkage::WeakAny => FunctionType::Exported, // FIXME(antoyo): should be similar to linkonce | rustc_codegen_gcc/src/base | |
Maybe, this is a FIXME | rustc_target/src/callconv/x86 | |
NOTE: dummy value here since it's never used. FIXME(antoyo): API should not return a value here? | rustc_codegen_gcc/src/builder | |
None => return None, // FIXME: report errors somewhere | tools/rust-analyzer/crates/hir-def/src/item_tree/lower | |
Note: the returned value is currently ignored (see the FIXME in | tools/miri/src/concurrency/thread | |
Qux (FIXME #572 - doc comment) | tools/rustfmt/tests/source/configs/struct_field_align_threshold/20 tools/rustfmt/tests/source/structs tools/rustfmt/tests/target/configs/struct_field_align_threshold/20 tools/rustfmt/tests/target/structs | Closed |
Required because of the FIXME above and due to us implementing `Eq`, without this | tools/rust-analyzer/crates/hir-ty/src/lib | |
Reset the flags back to empty until the FIXME above is addressed | rustc_target/src/spec/base/windows_uwp_gnu | |
See FIXME in `ModCollector::collect_macro_call()` | tools/rust-analyzer/crates/hir-def/src/nameres/tests/macros | |
See HACK comment above | rustc_lint/src/late | |
See above FIXME comment | rustc_codegen_ssa/src/back/linker | |
See the FIXME about `TokenCursor` above | rustc_parse/src/parser/expr | |
See the HACKs below | rustc_type_ir/src/relate | |
Self::connect(Ok(addr)) // FIXME: ignoring timeout | std/src/sys/pal/sgx/net | |
T: Foo, //FIXME ~ ERROR missing `~const` qualifier | ui/traits/const-traits/specialization/const-default-bound-non-const-specialized-bound | |
T: UserSafe, // FIXME: should be implied by [T]: UserSafe? | std/src/sys/pal/sgx/abi/usercalls/alloc std/src/sys/pal/sgx/abi/usercalls/alloc | |
Type checking clousres need an isolated body (See the above FIXME). Bail out early to prevent panic | tools/rust-analyzer/crates/hir-ty/src/consteval | |
We can lift this limitation; see FIXME in closure_ret module | tools/rust-analyzer/crates/ide/src/inlay_hints/bind_pat | |
X(x) // FIXME: this should error someday | ui/consts/const-eval/const_fn_ptr_fail | |
XXX HACK: This is how miri represents the handle for thread 0 | tools/miri/tests/fail-dep/concurrency/windows_join_main | |
[`None`] only if the type ref is an [`TypeRef::ImplTrait`]. FIXME: Might be better to just | tools/rust-analyzer/crates/hir-def/src/generics | |
[sparc_feature_v8plus]~^ ERROR +v8plus,-v9 (FIXME) | ui/abi/sparcv8plus | |
_ // FIXME: replace this function with panic when that works | tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests tools/rust-analyzer/crates/hir-ty/src/mir/eval/tests | |
_ => (), // FIXME(#22750) handle traits and stuff | rustc_trait_selection/src/error_reporting/infer/mod | Closed |
```rust,ignore (FIXME) | rustc_ast_lowering/src/pat | |
`move || x.clone()` will not work. FIXME: suggest `let y = x.clone(); move || y` | rustc_borrowck/src/diagnostics/conflict_errors | |
after it is forbidden (FIXME: report diagnostic) | tools/rust-analyzer/crates/hir-ty/src/lower | |
asm!("", in("v0") x); // FIXME: should be ok if vsx is available | ui/asm/powerpc/bad-reg | |
asm!("", out("v0") x); // FIXME: should be ok if vsx is available | ui/asm/powerpc/bad-reg | |
asm!("/* {} */", in(vreg) x); // FIXME: should be ok if vsx is available | ui/asm/powerpc/bad-reg | |
attrs.clone(), // FIXME: unwanted clone of attrs | rustc_parse/src/parser/stmt | |
attrs: vec![], // FIXME -- some automatically generated docs on this method? | tools/rust-analyzer/crates/ra-salsa/ra-salsa-macros/src/query_group | |
bug!("FIXME(RPITIT): error here"); | rustc_hir_analysis/src/check/compare_impl_item | |
c1!(item, [ pub use crate::{a, b::c}; ], "pub use crate::{ a, b::c };"); // FIXME | ui/macros/stringify | |
compile_error!("+v8plus,-v9 (FIXME)"); | ui/abi/sparcv8plus | |
const Y: usize = bar(X, 2); // FIXME: should fail to typeck someday | ui/consts/const-eval/const_fn_ptr_fail2 | |
const Z: usize = bar(double, 2); // FIXME: should fail to typeck someday | ui/consts/const-eval/const_fn_ptr_fail2 | |
env("CLIPPY_ARGS", clippy_args.join("__CLIPPY_HACKERY__")) | tools/clippy/lintcheck/src/main | |
err("Instead of XXX use FIXME") | tools/tidy/src/style | |
exist at all (see the FIXME at the start of this method), we have to deal with | rustc_next_trait_solver/src/solve/eval_ctxt/canonical | |
expect("FIXME unexpected higher-ranked trait bound") | tools/rust-analyzer/crates/hir-ty/src/lower tools/rust-analyzer/crates/hir-ty/src/utils | |
false, // FIXME : const and unsafe are not handled yet | tools/rust-analyzer/crates/ide-assists/src/handlers/generate_function | |
field's default value (FIXME: not done) | rustc_lint/src/default_could_be_derived | |
fn a() -> Result<i32, ()> { // FIXME: `Result` should be identified as an ambiguous item | ui/imports/issue-114682-4 | |
fn f<const N: u64>() -> Rate<N> { // FIXME: add some error | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/type_mismatch | |
fn p() { // FIXME(explicit_tail_calls): this currently trips an assertion | ui/parser/bad-let-else-statement | |
fold(String::new(), |s, arg| s + arg + "__CLIPPY_HACKERY__"); | tools/clippy/src/main | |
frame_pointer: FramePointer::Always, // FIXME 43575: should be MayOmit | rustc_target/src/spec/base/openbsd | Open |
glue is special - this would be part of Rust's memory model. (**FIXME**: due we have an | tools/rust-analyzer/crates/hir-ty/src/mir | |
here, when building for FIXME | rustc_mir_build/src/builder/mod | |
hir_def::hir::LogicOp::And => BinOp::BitAnd, // FIXME: make these short circuit | tools/rust-analyzer/crates/hir-ty/src/mir/lower | |
if first_line.contains("FIXME") { | tools/rust-analyzer/xtask/src/tidy | |
if from_substs is non-capturing (FIXME) | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | |
if passes_ident!(async) == 1 {} // FIXME: Edition hygiene bug, async here is 2018 and reserved | ui/editions/edition-keywords-2018-2015-parsing ui/editions/edition-keywords-2018-2018-parsing | Closed |
impl<T> const Baz for T //FIXME ~ ERROR conflicting implementations of trait `Baz` | ui/traits/const-traits/specialization/const-default-bound-non-const-specialized-bound | |
let _: <Pub as PubTr>::AssocTy; // FIXME no longer an error?! | ui/privacy/associated-item-privacy-trait | |
let _: fn() -> () = _; // FIXME: This should trigger an assist because `main` matches via *coercion | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/typed_hole | |
let args = ecx.copy_fn_args(args); // FIXME: Should `InPlace` arguments be reset to uninit? | tools/miri/src/machine tools/miri/src/machine | |
let edition = Edition::CURRENT_FIXME; | tools/rust-analyzer/crates/ide/src/typing | |
let end_entry = self.spans[start_entry..].partition_point(|&(it, _)| it <= end); // FIXME: this might be wrong? | tools/rust-analyzer/crates/span/src/map | |
let expected = Expectation::none(); // FIXME use actual const ty, when that is lowered correctly | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
let expr = ast::Expr::parse(&s, syntax::Edition::CURRENT_FIXME).syntax_node(); | tools/rust-analyzer/crates/ide-assists/src/handlers/extract_expressions_from_format_string | |
let integer_ty = self.type_ix(layout.size.bits()); // FIXME(antoyo): LLVM creates an integer of 96 bits for [i32; 3], but gcc doesn't support this, so it creates an integer of 128 bits | rustc_codegen_gcc/src/intrinsic/mod | Closed |
let lt = to_lt; // FIXME: Involve rustc LUB and SUB flag checks | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | |
let mut buf_it = alloc::UserRef::iter_mut(&mut *bufs); // FIXME: can this be done | std/src/sys/pal/sgx/abi/usercalls/mod std/src/sys/pal/sgx/abi/usercalls/mod | |
let n_tt = subtree.clone().count(); // FIXME: `count()` walks over the entire iterator | tools/rust-analyzer/crates/proc-macro-api/src/legacy_protocol/msg/flat | |
let parse = SourceFile::parse(&before, span::Edition::CURRENT_FIXME); | tools/rust-analyzer/crates/ide/src/typing | |
let parse = syntax::SourceFile::parse(text, span::Edition::CURRENT_FIXME); | tools/rust-analyzer/crates/ide-db/src/imports/insert_use | |
let parsed = SourceFile::parse(&text, span::Edition::CURRENT_FIXME); | tools/rust-analyzer/crates/ide/src/syntax_tree | |
link to these. (FIXME: Is that correct? It seems to be correct most | bootstrap/src/core/build_steps/compile | |
local_path: None, // FIXME: maybe we should preserve this? | rustc_metadata/src/rmeta/decoder | |
macro name, but we assume it isn't as there's no such case yet. FIXME if | tools/rust-analyzer/crates/hir-def/src/nameres/collector | |
metadata = None; // tuple field is always sized FIXME: This is wrong, the tail can be unsized | tools/rust-analyzer/crates/hir-ty/src/mir/eval | |
num_binders: 0, // FIXME lower `for<'a> fn()` correctly | tools/rust-analyzer/crates/hir-ty/src/lower | |
on_char_typed_(&parse, offset, char_typed, span::Edition::CURRENT_FIXME).map(|it| { | tools/rust-analyzer/crates/ide/src/typing | |
one after to suggest the replacement. FIXME(estebank): This is hacky, and there's | rustc_hir_typeck/src/fn_ctxt/checks | |
optimizations until after differentiation. FIXME(ZuseZ4): Before shipping on nightly | rustc_codegen_llvm/src/back/write | |
or FIXME: annotate inserted imports with the same cfg | tools/rust-analyzer/crates/ide-db/src/imports/insert_use | |
over(left.args, right.args, |l, r| self.eq_generic_arg(l, r)) // FIXME(flip1995): may not work | tools/clippy/clippy_utils/src/hir_utils | |
panic!("FIXME doc in a fully-documented crate: {}", path.display()) | tools/rust-analyzer/xtask/src/tidy | |
parser::Edition::CURRENT_FIXME | tools/rust-analyzer/crates/hir-expand/src/builtin/derive_macro | |
pub const CURRENT_FIXME: Edition = Edition::Edition2021; | tools/rust-analyzer/crates/edition/src/lib | |
pub static mut HACK: i32 = 0; | ui/numbers-arithmetic/shift-near-oflo | |
reported.unwrap() // FIXME(fmease): This is very likely reachable | rustc_hir_analysis/src/coherence/orphan | |
run(f()) // FIXME: remove this error | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/type_mismatch | |
see also an ignored test under FIXME comment in the qualify_path.rs module | tools/rust-analyzer/crates/ide-db/src/imports/import_assets | |
see the FIXME in that file for why this test | ui/inference/need_type_info/type-alias-indirect | |
simd_or: Uint, Int => or; // FIXME(antoyo): calling `or` might not work on vectors | rustc_codegen_gcc/src/intrinsic/simd | |
so we can now just go ahead and use that. FIXME(ZuseZ4): This doesn't handle sret yet | rustc_codegen_llvm/src/builder/autodiff | |
something unresolvable. FIXME: There should be a way to prevent that | tools/rust-analyzer/crates/ide/src/syntax_highlighting | |
source: None, // FIXME implement -Zembed-source | rustc_codegen_cranelift/src/debuginfo/line_info | |
span::Edition::CURRENT_FIXME | tools/rust-analyzer/crates/proc-macro-srv/src/server_impl/token_stream | |
split("__CLIPPY_HACKERY__") | tools/clippy/src/driver | |
super::LexedStr::single_token(syntax::Edition::CURRENT_FIXME, name) | tools/rust-analyzer/crates/ide-db/src/syntax_helpers/suggest_name | |
sym::simd_relaxed_fma => "fma", // FIXME: this should relax to non-fused multiply-add when necessary | rustc_codegen_gcc/src/intrinsic/simd | |
that. FIXME: Give a nicer error and suggest to the user to have a `&mut Foo` input instead | ui/autodiff/autodiff_illegal | |
the greatest API, FIXME find a better one | tools/rust-analyzer/crates/hir/src/lib | |
the return edge from the call. FIXME(tmiasko): Since this is a strictly code | rustc_mir_transform/src/validate | |
threads (FIXME: why?) | tools/miri/src/concurrency/thread | |
to them, but resolving that discrepancy was left as a FIXME in the code | ui/proc-macro/no-mangle-in-proc-macro-issue-111888 | |
ty::CoroutineClosure(..) => todo!("FIXME(async_closures): Lower these to SMIR") | rustc_smir/src/rustc_smir/convert/ty | |
ty::UnsafeBinder(_) => todo!("FIXME(unsafe_binder)") | rustc_const_eval/src/interpret/validity rustc_hir_typeck/src/cast rustc_lint/src/types rustc_trait_selection/src/traits/project rustc_trait_selection/src/traits/project | |
ty::UnsafeBinder(_) => todo!("FIXME(unsafe_binders)") | rustc_codegen_ssa/src/debuginfo/type_names | |
type E: _; // FIXME: make the parser propagate the existence of `B` | ui/typeck/typeck_type_placeholder_item | |
type of the immediate. However, as a HACK, we exploit that it can also do | rustc_mir_transform/src/gvn | |
unreachable!("FIXME: We really should have a separate `BoundConst` for consts") | rustc_type_ir/src/lib | |
unsafe { HACK += 1; } | ui/numbers-arithmetic/shift-near-oflo | |
unwrap() // FIXME | rustc_incremental/src/persist/fs | |
use S::{}; // FIXME, this and `use S::{self};` should be an error | ui/resolve/resolve-bad-import-prefix | |
use Tr::{}; // FIXME, this and `use Tr::{self};` should be an error | ui/resolve/resolve-bad-import-prefix | |
value will be XXX (FIXME) | tools/rust-analyzer/crates/ra-salsa/src/plumbing | |
will ICE because of #106994. FIXME(generic_const_exprs): remove this when a more general solution | rustc_hir_analysis/src/collect/predicates_of | Open |
| sym::cfi_encoding // FIXME(cfi_encoding) | rustc_passes/src/check_attr | |
| sym::deprecated_safe // FIXME(deprecated_safe) | rustc_passes/src/check_attr | |
| sym::omit_gdb_pretty_printer_section // FIXME(omit_gdb_pretty_printer_section) | rustc_passes/src/check_attr | |
| sym::patchable_function_entry // FIXME(patchable_function_entry) | rustc_passes/src/check_attr | |
| sym::pointee // FIXME(derive_coerce_pointee) | rustc_passes/src/check_attr | |
| ty::UnsafeBinder(_) => todo!("FIXME(unsafe_binder)") | rustc_middle/src/ty/sty | |
|| "implement".to_string(), // FIXME: it might only need to be imported into scope, not implemented | rustc_hir_typeck/src/method/suggest rustc_hir_typeck/src/method/suggest | |
} // FIXME(@dingxiangfei2009): handle the candidates in the function call arguments | rustc_hir_typeck/src/rvalue_scopes |