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(@lcnr): Write that section. If you read this before then ask me | rustc_trait_selection/src/solve/mod | |
! FIXME(Centril): For now being, much of the logic is still in `rustc_ast::attr` | rustc_attr/src/lib | |
! 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 | |
! FIXME: upstream to <kriomant/panic-context> ? | tools/rust-analyzer/crates/stdx/src/panic_context | |
"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/rfcs/rfc-2632-const-trait-impl/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 | |
"gitlab.gnome.org/GNOME/librsvg", // FIXME: doesn't compile in the CI since the | rustc_codegen_gcc/build_system/src/test | |
"pub use crate::{ a, b::c };" // FIXME | ui/macros/stringify | |
# #[cfg(not(miri))] { // FIXME: use strict provenance APIs once they are stable, then remove this `cfg` | core/src/primitive_docs | |
#![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(dead_code)] // FIXME(f16_f128): remove once constants are used | std/src/f128/tests std/src/f16/tests | |
#![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_lowering/src/asm rustc_ast_lowering/src/expr rustc_ast_lowering/src/lib 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/src/builtin rustc_attr/src/builtin rustc_attr/src/builtin rustc_borrowck/src/diagnostics/mod 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_borrowck/src/diagnostics/region_errors rustc_const_eval/src/transform/check_consts/ops rustc_const_eval/src/transform/check_consts/ops rustc_const_eval/src/transform/check_consts/ops rustc_const_eval/src/transform/check_consts/ops rustc_driver_impl/src/args rustc_expand/src/config rustc_expand/src/config rustc_expand/src/config rustc_expand/src/expand rustc_expand/src/expand rustc_expand/src/expand rustc_interface/src/interface rustc_interface/src/util rustc_interface/src/util rustc_interface/src/util rustc_lint/src/let_underscore rustc_lint/src/levels rustc_metadata/src/creader rustc_metadata/src/native_libs rustc_passes/src/check_attr rustc_passes/src/check_attr rustc_passes/src/check_const rustc_passes/src/entry 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_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 | |
#[const_trait] FIXME | ui/rfcs/rfc-2632-const-trait-impl/effects/minicore | |
#[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 | |
("fortanix-sgx-abi", "MPL-2.0"), // libstd but only for `sgx` target. FIXME: this dependency violates the documentation comment above | tools/tidy/src/deps | |
("library/backtrace", &[], None), // FIXME uncomment once rust-lang/backtrace#562 has been synced back to the rust repo | tools/tidy/src/deps | Closed |
("library/portable-simd", &[], None), // FIXME uncomment once rust-lang/portable-simd#363 has been synced back to the rust repo | tools/tidy/src/deps | Closed |
("library/stdarch", EXCEPTIONS_STDARCH, None), // FIXME uncomment once rust-lang/stdarch#1462 has been synced back to the rust repo | tools/tidy/src/deps | Closed |
("src/etc/test-float-parse", &[], None), // FIXME uncomment once all deps are vendored | 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: see check_loans.rs) | rustc_borrowck/src/lib | |
(FIXME: technically we only need to check this if the type is a fn ptr...) | rustc_trait_selection/src/solve/normalizes_to/mod rustc_trait_selection/src/solve/normalizes_to/mod rustc_trait_selection/src/solve/trait_goals rustc_trait_selection/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 | |
<T as /* FIXME: ~const */ Trait>::Assoc::func() | ui/rfcs/rfc-2632-const-trait-impl/assoc-type-const-bound-usage-0 | |
@ 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-object-safety 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/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/impl-trait/type-alias-impl-trait-in-fn-body 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/object-safety/object-safety-by-value-self ui/object-safety/object-safety-phantom-fn 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/uninhabited/patterns 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 ui/debuginfo/backtrace-dylib-dep ui/debuginfo/backtrace-line-tables-only 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 ui/std-backtrace | 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-debug: FIXME: checks for call detect scoped noalias metadata | codegen/vec-in-place codegen/vecdeque-drain | |
@ 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 #48807 | debuginfo/lexical-scope-with-macro | 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-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 | Closed |
@ ignore-windows failing on 64-bit bots FIXME #17638 | debuginfo/issue-12886 | Closed |
@ pretty-expanded FIXME #23616 | run-pass-valgrind/coerce-match-calls run-pass-valgrind/coerce-match ui/abi/anon-extern-mod ui/abi/c-stack-as-value ui/abi/cross-crate/anon-extern-mod-cross-crate-2 ui/abi/cross-crate/duplicated-external-mods ui/abi/extern/extern-pass-empty ui/abi/foreign/invoke-external-foreign ui/alias-uninit-value ui/array-slice-vec/cast-in-array-size ui/array-slice-vec/empty-mutable-vec ui/array-slice-vec/issue-15730 ui/array-slice-vec/issue-18425 ui/array-slice-vec/mut-vstore-expr ui/array-slice-vec/vec-macro-with-brackets ui/array-slice-vec/vec-repeat-with-cast ui/array-slice-vec/vector-no-ann-2 ui/associated-types/associated-types-binding-in-where-clause ui/associated-types/associated-types-conditional-dispatch ui/associated-types/associated-types-duplicate-binding-in-env-hrtb ui/associated-types/associated-types-duplicate-binding-in-env ui/associated-types/associated-types-eq-obj ui/associated-types/associated-types-issue-20371 ui/associated-types/associated-types-nested-projections ui/associated-types/associated-types-normalize-in-bounds-binding ui/associated-types/associated-types-normalize-in-bounds-ufcs ui/associated-types/associated-types-normalize-in-bounds ui/associated-types/associated-types-projection-in-object-type ui/associated-types/associated-types-projection-in-where-clause ui/associated-types/associated-types-qualified-path-with-trait-with-type-parameters ui/associated-types/associated-types-ref-from-struct ui/associated-types/associated-types-region-erasure-issue-20582 ui/associated-types/associated-types-resolve-lifetime ui/associated-types/issue-19129-1 ui/associated-types/issue-19129-2 ui/associated-types/issue-20763-1 ui/associated-types/issue-20763-2 ui/associated-types/issue-21363 ui/associated-types/issue-21726 ui/associated-types/issue-22828 ui/attr-start ui/attributes/attr-before-view-item ui/attributes/attr-before-view-item2 ui/attributes/attr-mix-new ui/attributes/method-attributes ui/attributes/variant-attributes ui/autoref-autoderef/autoderef-and-borrow-method-receiver ui/bench/issue-32062 ui/binding/inconsistent-lifetime-mismatch ui/binding/match-naked-record-expr ui/binding/match-naked-record ui/binding/match-path ui/binding/match-pattern-simple ui/binding/match-phi ui/binding/match-range-static ui/binding/match-value-binding-in-guard-3291 ui/binding/nil-pattern ui/binding/simple-generic-match ui/borrowck/borrowck-assign-to-subfield ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe ui/borrowck/borrowck-field-sensitivity-rpass ui/borrowck/borrowck-lend-args ui/borrowck/borrowck-static-item-in-fn ui/borrowck/borrowck-trait-lifetime ui/borrowck/borrowck-uniq-via-ref ui/borrowck/borrowck-use-mut-borrow-rpass ui/box/new-box-syntax ui/box/new ui/box/unit/unique-containing-tag ui/box/unit/unique-create ui/box/unit/unique-drop-complex ui/box/unit/unique-generic-assign ui/box/unit/unique-init ui/box/unit/unique-match-discrim ui/box/unit/unique-object-move ui/builtin-superkinds/builtin-superkinds-phantom-typaram ui/builtin-superkinds/builtin-superkinds-simple2 ui/builtin-superkinds/builtin-superkinds-typaram ui/can-copy-pod ui/cancel-clean-via-immediate-rvalue-ref ui/cfg/cfg-attr-cfg ui/cfg/cfg-attr-crate ui/cfg/cfg-family ui/cfg/cfg-match-arm ui/cfg/cfg-target-family ui/cfg/cfg_inner_static ui/cfg/conditional-compile-arch ui/check-static-recursion-foreign ui/cleanup-shortcircuit ui/closures/issue-10682 ui/closures/issue-1460 ui/closures/issue-868 ui/codegen/init-large-type ui/coercion/coerce-overloaded-autoderef ui/coercion/coerce-reborrow-imm-ptr-arg ui/coercion/coerce-reborrow-imm-vec-arg ui/coercion/coerce-reborrow-mut-ptr-arg ui/coercion/coerce-reborrow-mut-ptr-rcvr ui/coercion/coerce-unify-return ui/coercion/coerce-unsize-subtype ui/coercion/issue-14589 ui/coherence/coherence-bigint-int ui/coherence/coherence-bigint-vecint ui/coherence/coherence-blanket ui/coherence/coherence-covered-type-parameter ui/coherence/coherence-iterator-vec-any-elem ui/coherence/coherence-iterator-vec ui/coherence/coherence-multidispatch-tuple ui/coherence/coherence-negative-impls-safe-rpass ui/consts/const-bound ui/consts/const-expr-in-fixed-length-vec ui/consts/const-expr-in-vec-repeat ui/consts/const-struct-offsets ui/consts/const-unit-struct ui/consts/const-vec-of-fns ui/consts/const-vec-syntax ui/consts/issue-13837 ui/crate-leading-sep ui/crate-method-reexport-grrrrrrr ui/crate-name-attr-used ui/cross-crate/cci_capture_clause ui/cross-crate/cross-crate-const-pat ui/cross-crate/moves-based-on-type-cross-crate ui/cross-crate/xcrate-static-addresses ui/cross-crate/xcrate-trait-lifetime-param ui/default-method-parsing ui/deref ui/deriving/deriving-clone-enum ui/deriving/deriving-clone-generic-enum ui/deriving/deriving-clone-generic-struct ui/deriving/deriving-clone-generic-tuple-struct ui/deriving/deriving-clone-struct ui/deriving/deriving-clone-tuple-struct ui/deriving/deriving-enum-single-variant ui/deriving/deriving-in-macro ui/deriving/deriving-meta-multiple ui/deriving/deriving-meta ui/deriving/deriving-via-extension-hash-struct ui/deriving/issue-15689-2 ui/deriving/issue-6341 ui/double-ref ui/drop/drop-on-empty-block-exit ui/drop/drop-on-ret ui/drop/drop-uninhabited-enum ui/drop/issue-10028 ui/drop/issue-2734 ui/drop/issue-2735 ui/drop/nondrop-cycle ui/drop/use_inline_dtor ui/dropck/cleanup-arm-conditional ui/dupe-first-attr ui/dynamically-sized-types/dst-coercions ui/early-ret-binop-add ui/empty-allocation-rvalue-non-null ui/enum/issue-1821 ui/enum/issue-19340-1 ui/enum/issue-19340-2 ui/explicit-i-suffix ui/expr/if/if-ret ui/expr-scope ui/extern/extern-1 ui/extern/extern-calling-convention-test ui/extern/extern-foreign-crate ui/extern/extern-mod-abi ui/extern/extern-mod-ordering-exe ui/extern/extern-pub ui/extern/extern-rust ui/extern/issue-10025 ui/extern/issue-10763 ui/extern/issue-10764-rpass ui/extern/issue-1251 ui/feature-gates/feature-gate-simd ui/filter-block-view-items ui/fn/issue-1451 ui/for-loop-while/break-value ui/for-loop-while/issue-1257 ui/for-loop-while/labeled-break ui/for-loop-while/liveness-assign-imm-local-after-loop ui/for-loop-while/liveness-move-in-loop ui/for-loop-while/long-while ui/for-loop-while/loop-diverges ui/for-loop-while/loop-label-shadowing ui/for-loop-while/loop-labeled-break-value ui/for-loop-while/loop-no-reinit-needed-post-bot ui/for-loop-while/while-flow-graph ui/foreign/foreign-mod-unused-const ui/foreign/foreign2 ui/foreign/nil-decl-in-foreign ui/functions-closures/closure-bounds-can-capture-chan ui/functions-closures/fn-abi ui/functions-closures/fn-bare-coerce-to-block ui/functions-closures/fn-coerce-field ui/functions-closures/fn-item-type-coerce ui/functions-closures/fn-lval ui/functions-closures/fn-type-infer ui/generics/generic-default-type-params-cross-crate ui/generics/generic-fn-twice ui/generics/generic-newtype-struct ui/generics/generic-tag-corruption ui/generics/generic-tag-local ui/generics/generic-tag ui/generics/generic-type-synonym ui/generics/mid-path-type-params ui/generics/type-params-in-for-each ui/higher-ranked/trait-bounds/hrtb-binder-levels-in-object-types ui/higher-ranked/trait-bounds/hrtb-debruijn-object-types-in-closures ui/higher-ranked/trait-bounds/hrtb-parse ui/higher-ranked/trait-bounds/hrtb-precedence-of-plus-where-clause ui/higher-ranked/trait-bounds/hrtb-precedence-of-plus ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime ui/higher-ranked/trait-bounds/hrtb-trait-object-passed-to-closure ui/hygiene/issue-15221 ui/impl-privacy-xc-1 ui/imports/export-glob-imports-target ui/imports/export-multi ui/imports/import-crate-with-invalid-spans/main ui/imports/import-from ui/imports/import-in-block ui/imports/import-trailing-comma ui/imports/reexport-star ui/imports/use-mod ui/infer-fn-tail-expr ui/inference/newlambdas-ret-infer ui/inference/newlambdas-ret-infer2 ui/issue-15924 ui/issues/issue-10228 ui/issues/issue-10456 ui/issues/issue-10638 ui/issues/issue-10683 ui/issues/issue-10718 ui/issues/issue-10767 ui/issues/issue-10806 ui/issues/issue-10853 ui/issues/issue-10902 ui/issues/issue-11085 ui/issues/issue-11205 ui/issues/issue-11224 ui/issues/issue-11384 ui/issues/issue-11529 ui/issues/issue-11820 ui/issues/issue-11869 ui/issues/issue-12612 ui/issues/issue-12660 ui/issues/issue-12729 ui/issues/issue-12909 ui/issues/issue-13105 ui/issues/issue-13167 ui/issues/issue-13214 ui/issues/issue-13405 ui/issues/issue-13620 ui/issues/issue-13665 ui/issues/issue-13703 ui/issues/issue-13763 ui/issues/issue-13775 ui/issues/issue-13808 ui/issues/issue-14082 ui/issues/issue-14254 ui/issues/issue-14330 ui/issues/issue-14393 ui/issues/issue-14399 ui/issues/issue-14421 ui/issues/issue-14422 ui/issues/issue-14919 ui/issues/issue-14959 ui/issues/issue-15043 ui/issues/issue-15444 ui/issues/issue-15562 ui/issues/issue-15774 ui/issues/issue-16256 ui/issues/issue-16441 ui/issues/issue-16452 ui/issues/issue-16643 ui/issues/issue-16783 ui/issues/issue-16922-rpass ui/issues/issue-17121 ui/issues/issue-17322 ui/issues/issue-17351 ui/issues/issue-17361 ui/issues/issue-17732 ui/issues/issue-17771 ui/issues/issue-17904 ui/issues/issue-18110 ui/issues/issue-18188 ui/issues/issue-18232 ui/issues/issue-18353 ui/issues/issue-18501 ui/issues/issue-18539 ui/issues/issue-18685 ui/issues/issue-18711 ui/issues/issue-18906 ui/issues/issue-19037 ui/issues/issue-19127 ui/issues/issue-19293 ui/issues/issue-19398 ui/issues/issue-19479 ui/issues/issue-19499 ui/issues/issue-19631 ui/issues/issue-19632 ui/issues/issue-19850 ui/issues/issue-20009 ui/issues/issue-20313-rpass ui/issues/issue-20389 ui/issues/issue-20396 ui/issues/issue-20414 ui/issues/issue-20575 ui/issues/issue-20644 ui/issues/issue-2074 ui/issues/issue-21033 ui/issues/issue-21245 ui/issues/issue-21402 ui/issues/issue-2170-exe ui/issues/issue-21891 ui/issues/issue-2190-1 ui/issues/issue-21909 ui/issues/issue-22346 ui/issues/issue-22356 ui/issues/issue-22426 ui/issues/issue-22577 ui/issues/issue-22629 ui/issues/issue-22777 ui/issues/issue-2284 ui/issues/issue-2311 ui/issues/issue-2316-c ui/issues/issue-2380-b ui/issues/issue-2383 ui/issues/issue-2414-c ui/issues/issue-2445-b ui/issues/issue-2445 ui/issues/issue-2463 ui/issues/issue-2472 ui/issues/issue-2487-a ui/issues/issue-2502 ui/issues/issue-2526-a ui/issues/issue-2550 ui/issues/issue-2642 ui/issues/issue-2708 ui/issues/issue-3012-2 ui/issues/issue-3026 ui/issues/issue-3037 ui/issues/issue-3052 ui/issues/issue-3136-b ui/issues/issue-3149 ui/issues/issue-3220 ui/issues/issue-3429 ui/issues/issue-3500 ui/issues/issue-3656 ui/issues/issue-3874 ui/issues/issue-3888-2 ui/issues/issue-3979-2 ui/issues/issue-3991 ui/issues/issue-4208 ui/issues/issue-4228 ui/issues/issue-4333 ui/issues/issue-4387 ui/issues/issue-4464 ui/issues/issue-4542 ui/issues/issue-4545 ui/issues/issue-4735 ui/issues/issue-4759 ui/issues/issue-4830 ui/issues/issue-4875 ui/issues/issue-5192 ui/issues/issue-5315 ui/issues/issue-5518 ui/issues/issue-5550 ui/issues/issue-5554 ui/issues/issue-5572 ui/issues/issue-5718 ui/issues/issue-5741 ui/issues/issue-5754 ui/issues/issue-5884 ui/issues/issue-5900 ui/issues/issue-5950 ui/issues/issue-5988 ui/issues/issue-6117 ui/issues/issue-6318 ui/issues/issue-6557 ui/issues/issue-6898 ui/issues/issue-6919 ui/issues/issue-7178 ui/issues/issue-7268 ui/issues/issue-7344 ui/issues/issue-7519-match-unit-in-arg ui/issues/issue-7660 ui/issues/issue-7673-cast-generically-implemented-trait ui/issues/issue-7899 ui/issues/issue-8044 ui/issues/issue-8171-default-method-self-inherit-builtin-trait ui/issues/issue-8248 ui/issues/issue-8249 ui/issues/issue-8259 ui/issues/issue-8398 ui/issues/issue-8401 ui/issues/issue-8506 ui/issues/issue-8578 ui/issues/issue-8783 ui/issues/issue-9110 ui/issues/issue-9123 ui/issues/issue-9155 ui/issues/issue-9249 ui/issues/issue-9382 ui/issues/issue-9719 ui/issues/issue-9906 ui/issues/issue-9942 ui/issues/issue-9951 ui/issues/issue-9968 ui/item-name-overload ui/iterators/into-iterator-type-inference-shift ui/kinds-in-metadata ui/linkage-attr/issue-12133-1 ui/linkage-attr/issue-12133-2 ui/linkage-attr/issue-12133-3 ui/lint/dead-code/leading-underscore ui/lint/issue-14837 ui/lint/issue-1866 ui/lint/issue-20343 ui/lint/lint-non-camel-case-with-trailing-underscores ui/lint/lint-non-snake-case-no-lowercase-equivalent ui/lint/warn-ctypes-inhibit ui/list ui/liveness/liveness-assign-imm-local-after-ret ui/loops/issue-1974 ui/macros/issue-8851 ui/macros/log_syntax-trace_macros-macro-locations ui/macros/macro-invocation-in-count-expr-fixed-array-type ui/macros/macro-nt-list ui/macros/macro_with_super_2 ui/macros/parse-complex-macro-invoc-op ui/macros/pub-item-inside-macro ui/macros/pub-method-inside-macro ui/methods/method-early-bound-lifetimes-on-self ui/methods/method-normalize-bounds-issue-20604 ui/methods/method-recursive-blanket-impl ui/methods/method-two-traits-distinguished-via-where-clause ui/modules/issue-13872 ui/modules/mod-view-items ui/moves/move-nullary-fn ui/multiline-comment ui/mutual-recursion-group ui/nested-block-comment ui/never_type/expr-empty-ret ui/numbers-arithmetic/int ui/numbers-arithmetic/integer-literal-suffix-inference-2 ui/numbers-arithmetic/integer-literal-suffix-inference ui/numbers-arithmetic/uint ui/object-lifetime/object-lifetime-default-default-to-static ui/object-lifetime/object-lifetime-default-from-ref-struct ui/object-lifetime/object-lifetime-default-from-rptr-box ui/object-lifetime/object-lifetime-default-from-rptr-mut ui/object-lifetime/object-lifetime-default-from-rptr-struct ui/object-lifetime/object-lifetime-default-from-rptr ui/object-lifetime/object-lifetime-default-inferred ui/output-slot-variants ui/overloaded/fixup-deref-mut ui/overloaded/issue-14958 ui/overloaded/overloaded-calls-param-vtables ui/panic-handler/weak-lang-item-2 ui/parser/issues/issue-21475 ui/parser/issues/issue-7222 ui/parser/parse-assoc-type-lt ui/path ui/pattern/usefulness/irrefutable-unit ui/pattern/usefulness/nested-exhaustive-match ui/privacy/priv-impl-prim-ty ui/privacy/privacy-ns ui/privacy/privacy-reexport ui/privacy/privacy1-rpass ui/privacy/private-method-rpass ui/privacy/pub-extern-privacy ui/privacy/pub-use-xcrate ui/privacy/pub_use_mods_xcrate_exe ui/ptr-coercion-rpass ui/reachable/issue-11225-1 ui/reachable/issue-11225-2 ui/reachable/issue-11225-3 ui/recursion/instantiable ui/regions/issue-11612 ui/regions/issue-21520 ui/regions/issue-5243 ui/regions/issue-6157 ui/regions/owned-implies-static ui/regions/regions-addr-of-interior-of-unique-box ui/regions/regions-assoc-type-region-bound ui/regions/regions-assoc-type-static-bound ui/regions/regions-creating-enums2 ui/regions/regions-creating-enums5 ui/regions/regions-debruijn-of-object ui/regions/regions-dependent-autofn ui/regions/regions-dependent-let-ref ui/regions/regions-early-bound-lifetime-in-assoc-fn ui/regions/regions-expl-self ui/regions/regions-fn-subtyping-2 ui/regions/regions-fn-subtyping ui/regions/regions-infer-reborrow-ref-mut-recurse ui/regions/regions-infer-region-in-fn-but-not-type ui/regions/regions-infer-static-from-proc ui/regions/regions-issue-21422 ui/regions/regions-issue-22246 ui/regions/regions-lifetime-nonfree-late-bound ui/regions/regions-link-fn-args ui/regions/regions-mock-codegen ui/regions/regions-no-bound-in-argument-cleanup ui/regions/regions-nullary-variant ui/regions/regions-reassign-let-bound-pointer ui/regions/regions-reassign-match-bound-pointer ui/regions/regions-scope-chain-example ui/regions/regions-variance-contravariant-use-contravariant ui/regions/regions-variance-covariant-use-covariant ui/regions/wf-bound-region-in-object-type ui/resolve/blind-item-mixed-crate-use-item ui/resolve/blind-item-mixed-use-item ui/return-nil ui/self/explicit-self-closures ui/self/explicit_self_xcrate_exe ui/self/self-impl-2 ui/self/self-type-param ui/simd/array-trait ui/simd/array-type ui/sized-borrowed-pointer ui/sized-owned-pointer ui/static/issue-1660 ui/statics/issue-15261 ui/statics/issue-17718-static-unsafe-interior ui/statics/static-fn-inline-xc ui/statics/static-fn-trait-xc ui/statics/static-methods-in-traits2 ui/structs/large-records ui/structs-enums/class-dtor ui/structs-enums/class-str-field ui/structs-enums/class-typarams ui/structs-enums/classes-self-referential ui/structs-enums/enum-discrim-range-overflow ui/structs-enums/enum-export-inheritance ui/structs-enums/enum-variants ui/structs-enums/enum-vec-initializer ui/structs-enums/export-abstract-tag ui/structs-enums/export-tag-variant ui/structs-enums/foreign-struct ui/structs-enums/module-qualified-struct-destructure ui/structs-enums/namespaced-enum-emulate-flat-xc ui/structs-enums/namespaced-enum-emulate-flat ui/structs-enums/namespaced-enum-glob-import-xcrate ui/structs-enums/namespaced-enum-glob-import ui/structs-enums/namespaced-enums-xcrate ui/structs-enums/namespaced-enums ui/structs-enums/nested-enum-same-names ui/structs-enums/newtype-struct-with-dtor ui/structs-enums/newtype-struct-xc-2 ui/structs-enums/newtype-struct-xc ui/structs-enums/simple-generic-tag ui/structs-enums/struct-like-variant-construct ui/structs-enums/struct-variant-field-visibility ui/structs-enums/struct_variant_xc ui/structs-enums/tag-exports ui/structs-enums/tag-in-block ui/structs-enums/tag-variant-disr-type-mismatch ui/structs-enums/tuple-struct-trivial ui/structs-enums/variant-structs-trivial ui/super ui/svh-add-nothing ui/swap-overlapping ui/tail-call-arg-leak ui/threads-sendsync/child-outlives-parent ui/threads-sendsync/send-resource ui/threads-sendsync/send-type-inference ui/threads-sendsync/sendable-class ui/threads-sendsync/std-sync-right-kind-impls ui/threads-sendsync/sync-send-atomics ui/threads-sendsync/sync-send-iterators-in-libcore ui/threads-sendsync/task-comm-11 ui/threads-sendsync/task-comm-15 ui/threads-sendsync/task-comm-17 ui/threads-sendsync/task-life-0 ui/trailing-comma ui/traits/astconv-cycle-between-and-type ui/traits/bound/basic ui/traits/bound/impl-comparison-duplicates ui/traits/bound/multiple ui/traits/bound/on-structs-and-enums-rpass ui/traits/bound/recursion ui/traits/bug-7295 ui/traits/cache-issue-18209 ui/traits/composition-trivial ui/traits/cycle-generic-bound ui/traits/cycle-type-trait ui/traits/default-method/mut ui/traits/early-vtbl-resolution ui/traits/false-ambiguity-where-clause-builtin-bound ui/traits/impl-2 ui/traits/impl-implicit-trait ui/traits/inheritance/num ui/traits/inheritance/num0 ui/traits/inheritance/num1 ui/traits/inheritance/num5 ui/traits/issue-22019 ui/traits/issue-22110 ui/traits/issue-22655 ui/traits/issue-23003 ui/traits/monomorphized-callees-with-ty-params-3314 ui/traits/parameterized-with-bounds ui/traits/syntax-polarity ui/traits/use-before-def ui/traits/where-clause-vs-impl ui/transmute-non-immediate-to-immediate ui/type/issue-7607-2 ui/type-alias/issue-14933 ui/type-param-constraints ui/type-param ui/type-ptr ui/type-use-i1-versus-i8 ui/typeck/ufcs-type-params ui/typeck/unify-return-ty ui/unboxed-closures/issue-18661 ui/unboxed-closures/unboxed-closures-direct-sugary-call ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound ui/unboxed-closures/unboxed-closures-move-mutable ui/unboxed-closures/unboxed-closures-prelude ui/unboxed-closures/unboxed-closures-static-call-fn-once ui/unboxed-closures/unboxed-closures-zero-args ui/uninit-empty-types ui/unit ui/unnamed_argument_mode ui/unsafe/new-unsafe-pointers ui/unsafe/unsafe-fn-called-from-unsafe-blk ui/unsafe/unsafe-fn-called-from-unsafe-fn ui/unused-move-capture ui/unused-move ui/use/use ui/use-import-export ui/where-clauses/where-clause-bounds-inconsistency ui/where-clauses/where-clause-early-bound-lifetimes ui/where-clauses/where-clause-method-substituion-rpass ui/where-clauses/where-clause-region-outlives ui/where-clauses/where-clauses-lifetimes ui/where-clauses/where-clauses-unboxed-closures ui/xcrate/xcrate-unit-struct-2 | Open |
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 |
FIXME | rustc_hir_typeck/src/mem_categorization rustc_target/src/abi/call/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-expand/src/quote tools/rust-analyzer/crates/hir-expand/src/quote tools/rust-analyzer/crates/hir-ty/src/chalk_db tools/rust-analyzer/crates/hir-ty/src/tests/display_source_code 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/auto_import tools/rust-analyzer/crates/ide-assists/src/handlers/auto_import tools/rust-analyzer/crates/ide-assists/src/handlers/fix_visibility tools/rust-analyzer/crates/ide-completion/src/context/analysis tools/rust-analyzer/crates/proc-macro-srv/src/server/rust_analyzer_span tools/rust-analyzer/crates/proc-macro-srv/src/server/rust_analyzer_span tools/rust-analyzer/crates/project-model/src/env tools/rust-analyzer/crates/rust-analyzer/src/handlers/notification tools/rust-analyzer/crates/rust-analyzer/src/reload 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/rfcs/rfc-2632-const-trait-impl/effects/minicore ui/rfcs/rfc-2632-const-trait-impl/effects/minicore 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_infer/src/infer/error_reporting/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 (introduced by #65251) | test/src/tests | Closed |
FIXME (maybe): This is another case of issue #55005 | std/src/sys/sync/once/queue | 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 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 ui/self/arbitrary_self_types_pointers_and_wrappers | |
FIXME - determine what we should do if we encounter multiple `ConstraintCategory::Predicate` | 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 - pass this through from the place where we know | rustc_parse/src/parser/expr | |
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 | |
FIXME -- we don't indicate *why* we failed to solve | rustc_infer/src/infer/canonical/query_response | |
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 : This needs to go | tools/rust-analyzer/crates/ide-assists/src/handlers/apply_demorgan | |
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 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 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 Simplify the implementation once more `str` methods get const-stable | rustc_middle/src/mir/mod rustc_middle/src/util/common rustc_mir_transform/src/pass_manager | |
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 core/src/intrinsics | |
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 actually do nontemporal stores if requested | 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 | |
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 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/rfcs/rfc-2632-const-trait-impl/const-closure-parse-not-item ui/rfcs/rfc-2632-const-trait-impl/const-closure-trait-method ui/rfcs/rfc-2632-const-trait-impl/const-closures ui/rfcs/rfc-2632-const-trait-impl/const-drop-bound ui/rfcs/rfc-2632-const-trait-impl/issue-92111 ui/rfcs/rfc-2632-const-trait-impl/trait-where-clause-const | |
FIXME consider asking the input slice to be sorted to avoid | rustc_middle/src/ty/context rustc_middle/src/ty/context | |
FIXME const-hack | core/src/slice/index core/src/slice/index core/src/slice/index | |
FIXME convert to the type expected by the `dropck_outlives` | rustc_trait_selection/src/traits/query/type_op/outlives | |
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 ellen! deal with all the other return types | tools/miri/src/shims/ffi_support | |
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 find a cleaner way to support varargs | rustc_codegen_cranelift/src/abi/mod | |
FIXME fix `#[linkage = "extern_weak"]` without this | rustc_codegen_cranelift/build_system/tests | |
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 blocking when addition results in exceeding the max u64 value | tools/miri/src/shims/unix/linux/eventfd | |
FIXME handle constraints | tools/rust-analyzer/crates/hir-ty/src/infer/coerce | |
FIXME handle diagnostic | tools/rust-analyzer/crates/proc-macro-srv/src/server/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 fat 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 this | rustc_codegen_cranelift/src/debuginfo/unwind | |
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 lol | ui/rfcs/rfc-2632-const-trait-impl/effects/minicore | |
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 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 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 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 remember the nonblock flag | tools/miri/src/shims/unix/linux/eventfd | |
FIXME remove | rustc_codegen_cranelift/src/value_and_place rustc_codegen_cranelift/src/value_and_place | |
FIXME remove after portable-simd update | rustc_codegen_cranelift/build_system/tests | |
FIXME remove once drops are working | ui/sanitizer/cfi-closures | |
FIXME remove once vendoring is handled | bootstrap/src/core/build_steps/test | |
FIXME replace `mem::replace` by `mem::take` when the latter is const ready | core/src/option | |
FIXME replace with core::ffi::c_size_t once stablized | 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/rust_analyzer_span tools/rust-analyzer/crates/proc-macro-srv/src/server/rust_analyzer_span | |
FIXME requires db to resolve the ast id, THIS IS NOT INCREMENTAL | tools/rust-analyzer/crates/proc-macro-srv/src/server/rust_analyzer_span | |
FIXME requires db, looks up the parent call site | tools/rust-analyzer/crates/proc-macro-srv/src/server/rust_analyzer_span | |
FIXME requires db, needs special handling wrt fixup spans | tools/rust-analyzer/crates/proc-macro-srv/src/server/rust_analyzer_span | |
FIXME requires db, returns the top level call site | tools/rust-analyzer/crates/proc-macro-srv/src/server/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 number of events ready when scheme for marking events ready exists | tools/miri/src/shims/unix/linux/epoll | |
FIXME return the actually used target features. this is necessary for #[cfg(target_feature)] | rustc_codegen_cranelift/src/lib | |
FIXME run-pass | ui/rfcs/rfc-2632-const-trait-impl/const-drop ui/rfcs/rfc-2632-const-trait-impl/specialization/non-const-default-const-specialized | |
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 %al to upperbound on float args once floats are supported | rustc_codegen_cranelift/src/abi/mod | |
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 span | tools/rust-analyzer/crates/mbe/src/expander/transcriber | |
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 stub, requires db | tools/rust-analyzer/crates/proc-macro-srv/src/server/rust_analyzer_span | |
FIXME support escapes in strings | tools/compiletest/src/header | |
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 | |
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 `unchecked_map` is only necessary because the | rustc_trait_selection/src/traits/query/type_op/implied_outlives_bounds | |
FIXME this can be an exact division | rustc_codegen_cranelift/src/intrinsics/mod | |
FIXME this can probably just do the call if `EPERM` was received, but | std/src/sys/pal/unix/fs | |
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 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 shouldn't be false | rustdoc/clean/mod | |
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 uncomment below upon stabilization | rustc_lint_defs/src/builtin | |
FIXME uncomment once rust-lang/stdarch#1462 lands | tools/tidy/src/deps | Closed |
FIXME unify with fn_sig_for_fn instead of doing lowering twice, maybe | tools/rust-analyzer/crates/hir-ty/src/lower | |
FIXME update resolver for the surrounding expression | tools/rust-analyzer/crates/hir-ty/src/infer/pat | |
FIXME use ArArchiveBuilder on most targets again once reading thin archives is | rustc_codegen_llvm/src/back/archive | |
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 c string literals here too | rustc_codegen_llvm/src/back/write | |
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/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 using host floats | tools/miri/src/shims/intrinsics/simd tools/miri/src/shims/x86/mod tools/miri/src/shims/x86/mod tools/miri/src/shims/x86/sse2 tools/miri/src/shims/x86/sse2 | |
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 be able to import both the trait and the segment | tools/rust-analyzer/crates/ide-db/src/imports/import_assets | |
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 we're probably doing something wrong here | tools/rust-analyzer/crates/hir-ty/src/lower tools/rust-analyzer/crates/hir-ty/src/lower | |
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 ~^ ERROR can't drop | ui/consts/const-block-const-bound | |
FIXME ~^ ERROR cannot call | ui/consts/unstable-const-fn-in-libcore | |
FIXME ~^ ERROR cannot match on `str` in constant functions | ui/rfcs/rfc-2632-const-trait-impl/match-non-const-eq | |
FIXME ~^ ERROR destructor of | ui/consts/unstable-const-fn-in-libcore ui/rfcs/rfc-2632-const-trait-impl/const-drop ui/rfcs/rfc-2632-const-trait-impl/const-drop | |
FIXME ~^ ERROR the trait bound | ui/rfcs/rfc-2632-const-trait-impl/issue-102985 ui/rfcs/rfc-2632-const-trait-impl/issue-88155 ui/rfcs/rfc-2632-const-trait-impl/super-traits-fail ui/rfcs/rfc-2632-const-trait-impl/trait-where-clause-const ui/rfcs/rfc-2632-const-trait-impl/trait-where-clause-const | |
FIXME ~^ ERROR the trait bound `(): Tr` is not satisfied | ui/rfcs/rfc-2632-const-trait-impl/default-method-body-is-const-body-checking | |
FIXME ~^ ERROR: cannot call | ui/consts/issue-94675 | |
FIXME ~^ ERROR: const `impl` for trait `A` which is not marked with `#[const_trait]` | ui/rfcs/rfc-2632-const-trait-impl/const-impl-requires-const-trait | |
FIXME ~^ ERROR: temporary value dropped while borrowed | ui/consts/promoted_const_call ui/consts/promoted_const_call | |
FIXME ~^ ERROR: the trait bound `T: ~const Sup` is not satisfied | ui/rfcs/rfc-2632-const-trait-impl/specializing-constness-2 | |
FIXME ~^ HELP: mark `A` as const | ui/rfcs/rfc-2632-const-trait-impl/const-impl-requires-const-trait | |
FIXME ~| ERROR cannot call non-const closure in constants | ui/rfcs/rfc-2632-const-trait-impl/issue-102985 | |
FIXME ~| ERROR cannot call non-const fn | ui/rfcs/rfc-2632-const-trait-impl/issue-88155 | |
FIXME ~| ERROR destructor of | ui/consts/unstable-const-fn-in-libcore | |
FIXME ~| ERROR the trait bound | ui/rfcs/rfc-2632-const-trait-impl/issue-102985 | |
FIXME ~| ERROR: cannot call | ui/consts/issue-94675 | |
FIXME ~| ERROR: temporary value dropped while borrowed | ui/consts/promoted_const_call ui/consts/promoted_const_call | |
FIXME ~| ERROR: the trait bound | ui/consts/issue-94675 | |
FIXME! consider allowing users to specify paths to multiple SO 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_infer/src/errors/mod | 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(#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(#106649): Remove aarch64-fuchsia in favor of aarch64-unknown-fuchsia | rustc_target/src/spec/mod | Open |
FIXME(#106649): Remove x86_64-fuchsia in favor of x86_64-unknown-fuchsia | rustc_target/src/spec/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 | Open |
FIXME(#11084): This could be replaced with Iterator::scan when this | core/src/option | Closed |
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 `local` as | 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(#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(#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 | Open |
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/lib 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_analysis/src/collect/resolve_bound_vars rustc_hir_analysis/src/hir_ty_lowering/object_safety 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/traits/specialize/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-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(#123409): This test can be removed when we have examples of MC/DC | tools/compiletest/src/runtest/tests | 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(#13846) this should be enabled for windows | rustc_target/src/spec/base/windows_gnu | Closed |
FIXME(#13998) RePlaceholder should probably print like | rustc_infer/src/errors/note_and_explain | 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(#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(#18741): it seems likely that we can consolidate some of this | rustc_hir_typeck/src/method/mod | 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 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 | 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/build/expr/category | Closed |
FIXME(#28160) there is an interesting semantics | rustc_mir_build/src/build/expr/stmt | Closed |
FIXME(#29623) we could use PatKind::Range to rule | rustc_mir_build/src/build/matches/test | Open |
FIXME(#29623). In some cases, we have some tricky choices to make. for | rustc_mir_build/src/build/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/glb rustc_infer/src/infer/relate/lub | 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 tools/compiletest/src/runtest | Closed |
FIXME(#42700) - Need to format self properly to | rustc_infer/src/infer/error_reporting/nice_region_error/util | Open |
FIXME(#42703) - Need to handle certain cases here | rustc_infer/src/infer/error_reporting/nice_region_error/util | Open |
FIXME(#42706) -- in some cases, we could do better here | rustc_middle/src/ty/context | Open |
FIXME(#42800) | rustc_codegen_llvm/src/debuginfo/mod | Open |
FIXME(#42940): This should use the `FreeRegionsVisitor`, but that's | rustc_infer/src/infer/opaque_types/mod | 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(#44234) - almost all of these queries have no sub-queries and | rustc_metadata/src/rmeta/decoder/cstore_impl | Closed |
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(#50145): `abs` is publicly unavailable in core due to | core/src/num/f32 core/src/num/f64 | 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 | Open |
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/build/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_build/src/lints | 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(#65833): We permit associated consts to have an `#[inline]` attribute with | rustc_passes/src/check_attr | Open |
FIXME(#65865) | tools/compiletest/src/runtest | Open |
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(#72505): This suggestion can be restored if `f{32,64}::is_nan` is made const | rustc_lint/src/types | 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_infer/src/infer/error_reporting/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(#78544): MIR InstrumentCoverage: Improve coverage of `#[should_panic]` tests and | rustc_mir_transform/src/coverage/graph 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_mir_transform/src/coverage/mod | 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(#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(#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(#84224) this should come after the `target_thread_local` | std/src/sys/thread_local/static_local | Open |
FIXME(#85133): while this might be useful for `r#try!`, it would be nice to have a MIR | codegen/try_identity mir-opt/simplify_arm | Closed |
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(#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): Resugar equality bounds to type/const bindings | 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_infer/src/infer/error_reporting/need_type_info | Open |
FIXME(-Zlower-impl-trait-in-trait-to-assoc-ty): HIR is not present for RPITITs | rustc_trait_selection/src/traits/error_reporting/on_unimplemented | |
FIXME(-Znext-solver): A bit dubious that we're only registering | rustc_borrowck/src/type_check/mod | |
FIXME(-Znext-solver): A lot of the calls to this method should | rustc_hir_typeck/src/fn_ctxt/_impl | |
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/traits/error_reporting/type_err_ctxt_ext | |
FIXME(-Znext-solver): How do we accurately report an error span here :( | rustc_infer/src/infer/outlives/obligations | |
FIXME(-Znext-solver): Implement this when we get const working in the new solver | rustc_trait_selection/src/solve/trait_goals | |
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): Overflows are reported as ambig here, is that OK? | rustc_trait_selection/src/traits/query/evaluate_obligation | |
FIXME(-Znext-solver): Remove this branch once `replace_opaque_types_with_infer` is gone | rustc_hir_typeck/src/_match | |
FIXME(-Znext-solver): Remove this variant and cleanup | rustc_middle/src/ty/fast_reject | |
FIXME(-Znext-solver): THis currently results in unstable query results | ui/dyn-star/param-env-region-infer | |
FIXME(-Znext-solver): These error messages are horrible and some of them | ui/traits/next-solver/object-unsafety | |
FIXME(-Znext-solver): This has the same behavior as `traits::fully_normalize` | rustc_trait_selection/src/traits/normalize | |
FIXME(-Znext-solver): This is public because it's used by the | rustc_infer/src/infer/canonical/mod | |
FIXME(-Znext-solver): This line is necessary due to an unrelated solver bug | ui/traits/next-solver/generalize/occurs-check-nested-alias | |
FIXME(-Znext-solver): This or public because it is shared with the | rustc_infer/src/infer/canonical/instantiate | |
FIXME(-Znext-solver): This should be replaced by `At::deeply_normalize` | rustc_trait_selection/src/traits/mod | |
FIXME(-Znext-solver): This should be unnecessary with the new solver | rustc_borrowck/src/region_infer/opaque_types | |
FIXME(-Znext-solver): This test is currently broken because the `deduce_closure_signature` | ui/traits/next-solver/deduce-closure-signature-after-normalization | |
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 need to structurally resolve both types here | rustc_hir_typeck/src/coercion | |
FIXME(-Znext-solver): We only need this hack to deal with fatal | rustc_hir_typeck/src/method/probe | |
FIXME(-Znext-solver): We probably should use `&[]` instead of | rustc_borrowck/src/region_infer/opaque_types | |
FIXME(-Znext-solver): We should instead try to find a `Certainty::Yes` response with | rustc_trait_selection/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): these error messages are horrible and have to be | ui/for/issue-20605 | |
FIXME(-Znext-solver): this fails with a mismatched types as the | ui/impl-trait/recursive-coroutine-boxed | |
FIXME(-Znext-solver=coherence): we currently don't | rustc_trait_selection/src/traits/coherence | |
FIXME(-Znext-solver=coinduction): `_source` is currently unused but will | rustc_trait_selection/src/solve/eval_ctxt/mod | |
FIXME(-Znext-solver=coinductive): Explain how and why this | rustc_middle/src/traits/solve | |
FIXME(-Znext-solver=coinductive): I think this should be split | rustc_trait_selection/src/solve/normalizes_to/inherent | |
FIXME(-Znext-solver=coinductive): Should this be `GoalSource::ImplWhereBound`? | rustc_trait_selection/src/solve/assembly/mod rustc_trait_selection/src/solve/normalizes_to/mod rustc_trait_selection/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(-Znext-solver=coinductive): check whether this should be | rustc_trait_selection/src/solve/assembly/mod | |
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 | Open |
FIXME(79651): Consider trying to filter out dummy instantiations of | rustc_codegen_llvm/src/coverageinfo/mapgen | 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(@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): 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(@jswrenn): this should probably be more sophisticated | rustc_trait_selection/src/traits/select/mod | |
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): A lot of these variants overlap and it seems like | rustc_borrowck/src/renumber | |
FIXME(@lcnr): Figure out whether this is reachable and if so, why | rustc_infer/src/infer/error_reporting/mod | |
FIXME(@lcnr): It feels like this could easily hide | rustc_trait_selection/src/solve/assembly/mod | |
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): The current structure here makes me unhappy and feels ugly. idk how | rustc_trait_selection/src/solve/assembly/mod | |
FIXME(@lcnr): This can also store a `DefId`, similar to | rustc_infer/src/infer/mod | |
FIXME(@lcnr): This function could be changed to trait `TraitRef` directly | rustc_trait_selection/src/traits/error_reporting/type_err_ctxt_ext | |
FIXME(@lcnr): This isn't a query, so why does it take a tuple as its argument | rustc_trait_selection/src/traits/vtable | |
FIXME(@lcnr): This method should not be necessary, we now normalize | rustc_middle/src/ty/normalize_erasing_regions | |
FIXME(@lcnr): We may even consider experimenting with eagerly replacing bound vars during | rustc_trait_selection/src/traits/util | |
FIXME(@lcnr): figure out why we have to handle `ReBound` | rustc_infer/src/errors/note_and_explain | |
FIXME(@lcnr): link to some official documentation of how | rustc_middle/src/traits/solve/cache | |
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(@lcnr): we have to slightly adapt this API | rustc_trait_selection/src/solve/inspect/analyse | |
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): self.def_id goes first because of `erased-regions-in-hidden-ty.rs` being impossible to write | rustc_middle/src/ty/region | |
FIXME(BoxyUwU): this is kind of jank and means that printing unresolved | rustc_infer/src/infer/mod | |
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): Should we just allow `...` syntactically | rustc_parse/src/parser/ty | |
FIXME(Centril): This can be used on stable but shouldn't | rustc_feature/src/builtin_attrs tools/rust-analyzer/crates/hir-def/src/attr/builtin | |
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(JakobDegen) The validator should check that `self.mir_phase < | rustc_const_eval/src/transform/validate rustc_const_eval/src/transform/validate | |
FIXME(JakobDegen): Broken by deaggregation change CHECK-NOT\: br {{.*}} | codegen/try_identity | |
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_const_eval/src/transform/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/context/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_expand/src/base | |
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(RFC 1109): AtomicUsize is not Copy | alloc/src/slice/tests | Closed |
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): Perhaps we should use a visitor here? | rustc_trait_selection/src/traits/object_safety | |
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 cannot explain what this does or why it makes sense, but not doing this | rustc_middle/src/ty/consts/kind | |
FIXME(RalfJung): I don't think it would be correct to do any checks for | rustc_ty_utils/src/layout_sanity_check | |
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 usecase | 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 this. For that | rustc_infer/src/infer/error_reporting/need_type_info | |
FIXME(Urgau): Figure out how to handle modules nested in bodies | rustc_lint/src/non_local_def | |
FIXME(Urgau): Should warn but doesn't since we currently consider | ui/lint/non-local-defs/from-local-for-global ui/lint/non-local-defs/from-local-for-global | |
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): Add to marker_impls call above once not in bootstrap | core/src/marker | |
FIXME(adt_const_params): We should check there's not already an | rustc_trait_selection/src/traits/error_reporting/type_err_ctxt_ext | |
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): `*` 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): 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): hack because base::from_immediate converts i1 to i8 | rustc_codegen_gcc/src/builder | |
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 this cast when the API supports function | rustc_codegen_gcc/src/intrinsic/mod | |
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". Try to disable it here | 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(arbitrary_self_types): We probably should limit the | rustc_hir_typeck/src/method/confirm | |
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_trait_selection/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): allow for consts here | rustc_codegen_ssa/src/debuginfo/type_names | |
FIXME(async_closures): Actually, it could also implement `Fn`/`FnMut` | rustc_trait_selection/src/traits/select/candidate_assembly | |
FIXME(async_closures): Investigate this before stabilization | rustc_trait_selection/src/traits/select/confirmation | |
FIXME(async_closures): Is this the right signature to visit here? | rustc_infer/src/infer/opaque_types/mod | |
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): These are never clone, for now | rustc_trait_selection/src/traits/select/mod | |
FIXME(async_closures): These don't impl `FnOnce` by default | rustc_hir_typeck/src/method/suggest | |
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 | |
FIXME(async_closures): This shouldn't be needed, and we should be populating | rustc_ty_utils/src/abi rustc_ty_utils/src/abi | |
FIXME(async_closures): Validity constraints here could be cleaned up | rustc_trait_selection/src/traits/project | |
FIXME(async_closures): We could do other validation here? | rustc_const_eval/src/transform/validate | |
FIXME(async_closures): When `fn_sig_for_fn_abi` is fixed, remove this | ui/async-await/async-closures/mangle | |
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(bob_twinkles) is this actually the right thing to do? | rustc_borrowck/src/polonius/loan_invalidations | |
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(c410-f3r) See rust-lang/rust/issues/96949 | rustc_builtin_macros/src/assert | |
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) - 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 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_infer/src/infer/error_reporting/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/traits/error_reporting/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_infer/src/infer/error_reporting/note | |
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_infer/src/infer/error_reporting/mod | |
FIXME(compiler-errors): This could be generalized, both to | rustc_trait_selection/src/traits/error_reporting/type_err_ctxt_ext | |
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 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 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(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) make this const again | rustc_ast/src/ptr | |
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): Use `?` instead | core/src/slice/memchr | |
FIXME(const-hack): replace with `From` | core/src/ptr/unique | |
FIXME(const-hack): replace with cmp | core/src/num/int_macros | |
FIXME(const-hack): use get_unchecked | core/src/ffi/c_str | |
FIXME(const-hack, fee1-dead): replace with min | core/src/slice/memchr | |
FIXME(const-hack, fee1-dead): replace with range slicing | core/src/slice/memchr | |
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-artifical restriction until the | rustc_hir_analysis/src/hir_ty_lowering/bounds | |
FIXME(const_generics): We currently have to special case parameters because `min_const_generics` | rustc_middle/src/ty/consts | |
FIXME(const_generics): add an assert that we only do this for valtrees | rustc_symbol_mangling/src/v0 | |
FIXME(const_generics): handle paths when #67075 is fixed | rustc_lint/src/unused | Open |
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 suggest to the user how they can resolve this | rustc_trait_selection/src/traits/error_reporting/type_err_ctxt_ext | |
FIXME(const_generics_defaults): It seems like we aren't testing the right thing here | ui/const-generics/defaults/default-annotation | |
FIXME(const_generics_defaults): This | rustc_hir_analysis/src/check/wfcheck | |
FIXME(const_trait_impl): Create rjt::TBM::Const and map to it once always-const bounds | rustdoc/json/conversions | |
FIXME(const_trait_impl): change to for loop | core/tests/hash/mod | |
FIXME(const_trait_impl): maybe we should have a way to refer to the (hidden) effect param | ui/rfcs/rfc-2632-const-trait-impl/effects/helloworld | |
FIXME(const_trait_impl): revert to span_bug? | rustc_const_eval/src/transform/check_consts/ops | |
FIXME(const_trait_impl, effects, fee1-dead) this should be simplified if possible | rustc_ast_lowering/src/item | |
FIXME(coolreader18): move to stdarch | unwind/src/wasm | |
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(coroutines): This doesn't handle coroutines correctly | rustc_passes/src/loops | |
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_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/glb rustc_infer/src/infer/relate/lub | |
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/build/matches/util | |
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/traits/error_reporting/on_unimplemented | |
FIXME(dlrobertson): In order to use the VaArgSafe trait in a public interface | core/src/ffi/mod | |
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): make sure nothing needs to be done here | rustc_const_eval/src/transform/validate | |
FIXME(dyn-star): need to update v0 mangling docs | rustc_symbol_mangling/src/v0 | |
FIXME(ecstaticmorse): Avoid cloning the exit state unconditionally | rustc_mir_dataflow/src/framework/direction | |
FIXME(ecstaticmorse): Maybe this could be incorporated into `feature_err`? This | rustc_passes/src/check_const | |
FIXME(ecstaticmorse): Maybe we should `bug` here? This should probably only be | rustc_middle/src/ty/util | |
FIXME(ecstaticmorse): This boxed `Fn` trait object is invoked inside a tight loop for | rustc_mir_dataflow/src/framework/engine | |
FIXME(ecstaticmorse); For compatibility, we consider `unstable` callees that | rustc_const_eval/src/transform/check_consts/check | |
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) This should use `IndexVec<Local, Option<_>>` | rustc_mir_transform/src/coroutine | |
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 having this snippet both here and in | rustc_mir_transform/src/shim | |
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) investigate overlap between this and `TyOrConstInferVar` | rustc_infer/src/infer/mod | |
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 the `const_eval_*` methods should take | rustc_middle/src/ty/consts | |
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/abi/call/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 rustc_codegen_llvm/src/debuginfo/create_scope_map | |
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_middle/src/ty/sty | |
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 `const`s instead of getting the values via FFI | rustc_codegen_llvm/src/debuginfo/mod | |
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 reference to the `static COUNTERS`, instead of | proc_macro/src/bridge/client proc_macro/src/bridge/client | |
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): check the actual primitive type here | rustc_codegen_ssa/src/mir/place | |
FIXME(eddyb, skinny121) pass `InferCtxt` into here when it's available, so that | rustc_middle/src/ty/consts/kind | |
FIXME(eddyb, varkor) handle type paths here too, not just value ones | rustc_hir_analysis/src/hir_ty_lowering/mod | |
FIXME(effects) | rustc_hir_analysis/src/impl_wf_check/min_specialization rustc_trait_selection/src/traits/error_reporting/infer_ctxt_ext rustc_trait_selection/src/traits/error_reporting/type_err_ctxt_ext rustc_trait_selection/src/traits/error_reporting/type_err_ctxt_ext tools/clippy/tests/ui/missing_const_for_fn/could_be_const ui/rfcs/rfc-2632-const-trait-impl/const-drop-fail-2 | |
FIXME(effects) #[const_trait] | core/src/ops/drop core/src/ops/function core/src/ops/function core/src/ops/function | |
FIXME(effects) ^ should error | ui/rfcs/rfc-2632-const-trait-impl/specialization/const-default-bound-non-const-specialized-bound | |
FIXME(effects) add `const_trait` to `Fn` so we use `~const` | rustdoc/rfc-2632-const-trait-impl | |
FIXME(effects) check constness | rustdoc/clean/mod | |
FIXME(effects) constness | tools/clippy/clippy_utils/src/qualify_min_const_fn | |
FIXME(effects) diagnostic | ui/rfcs/rfc-2632-const-trait-impl/super-traits-fail-2 | |
FIXME(effects) printing? | rustc_middle/src/ty/structural_impls | |
FIXME(effects) revisit this | rustc_const_eval/src/transform/check_consts/ops | |
FIXME(effects) see if we should special case effect params here | rustc_hir_analysis/src/hir_ty_lowering/mod | |
FIXME(effects) this shouldn't pass | ui/rfcs/rfc-2632-const-trait-impl/effects/const_closure-const_trait_impl-ice-113381 | |
FIXME(effects) we might consider moving const stability checks to typeck as well | rustc_const_eval/src/transform/check_consts/check | |
FIXME(effects) ~^ ERROR: cannot call non-const fn | ui/rfcs/rfc-2632-const-trait-impl/effects/const_closure-const_trait_impl-ice-113381 | |
FIXME(effects) ~| ERROR: missing `~const` qualifier | ui/rfcs/rfc-2632-const-trait-impl/specializing-constness | |
FIXME(effects): Collapse the revisions into one once we support `<Ty as const Trait>::Proj` | ui/rfcs/rfc-2632-const-trait-impl/assoc-type-const-bound-usage-1 | |
FIXME(effects): Collapse the revisions into one once we support `<Ty as ~const Trait>::Proj` | ui/rfcs/rfc-2632-const-trait-impl/assoc-type-const-bound-usage-0 | |
FIXME(effects): Consider getting rid of this in favor of `errors::TildeConstReason`, they're | rustc_ast_passes/src/ast_validation | |
FIXME(effects): Consider making the note/reason the message of the diagnostic | rustc_ast_passes/src/errors | |
FIXME(effects): Consider providing a help message or even a structured | rustc_ast_passes/src/ast_validation | |
FIXME(effects): If `destruct` is not a `const_trait` | rustc_const_eval/src/transform/check_consts/qualifs | |
FIXME(effects): Instead of suggesting `+ const Trait`, suggest | ui/rfcs/rfc-2632-const-trait-impl/unsatisfied-const-trait-bound | |
FIXME(effects): Move all host param things in HIR ty lowering to AST lowering | rustc_hir_analysis/src/hir_ty_lowering/mod | |
FIXME(effects): Provide structured suggestions (e.g., add `const` / `#[const_trait]` here) | rustc_ast_passes/src/errors | |
FIXME(effects): Replace `Add` with `std::ops::Add` once the latter a `#[const_trait]` again | ui/rfcs/rfc-2632-const-trait-impl/assoc-type | |
FIXME(effects): Somehow emit `the trait bound `T: const Trait` is not satisfied` here instead | ui/rfcs/rfc-2632-const-trait-impl/unsatisfied-const-trait-bound | |
FIXME(effects): This doesn't handle const closures correctly! | rustc_trait_selection/src/traits/project | |
FIXME(effects): This is suspicious and should probably not be done | rustc_middle/src/ty/util | |
FIXME(effects): `~const` bounds in trait associated types (excluding associated type bounds) | ui/rfcs/rfc-2632-const-trait-impl/tilde-const-trait-assoc-tys | |
FIXME(effects): better diagnostic | rustc_hir_typeck/src/callee | |
FIXME(effects): diagnostic | ui/rfcs/rfc-2632-const-trait-impl/call-generic-method-fail | |
FIXME(effects): these arms should error because we can't enforce them | rustc_hir_typeck/src/callee | |
FIXME(effects): we may want to erase the effect param if that is present on this item | rustc_ty_utils/src/instance | |
FIXME(effects, const_trait_impl) derive_const as suggestion? | rustc_trait_selection/src/traits/error_reporting/suggestions | |
FIXME(effects, fee1-dead) revert to const destruct once it works again | tools/clippy/clippy_utils/src/qualify_min_const_fn | |
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_llvm/src/debuginfo/metadata/enums/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): 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): add a diagnostic note that `become` doesn't allow coercions | rustc_hir_typeck/src/expr | |
FIXME(explicit_tail_calls): maybe get `become` a new error | rustc_ty_utils/src/consts | |
FIXME(explicit_tail_calls): properly lower tail calls here | rustc_mir_build/src/build/expr/stmt | |
FIXME(f16_f128): When available, compare to the library parser as with `f32` and `f64` | rustc_mir_build/src/build/mod rustc_mir_build/src/build/mod | |
FIXME(f16_f128): add `f16` and `f128` when these types become stable | tools/clippy/clippy_lints/src/approx_const | |
FIXME(f16_f128): add this check once we have library support | rustc_lint/src/types | |
FIXME(f16_f128): adding additional `From` impls for existing types breaks inference. See | core/src/convert/num | |
FIXME(f16_f128): almost everything in this `impl` is missing examples and a const | core/src/num/f128 core/src/num/f16 | |
FIXME(f16_f128): do a check like the others when parsing is available | tools/clippy/clippy_lints/src/float_literal | |
FIXME(f16_f128): replace the magic numbers once `{f16,f128}::DIGITS` are available | tools/clippy/clippy_lints/src/float_literal | |
FIXME(f16_f128): update these once `rustc-demangle` supports the new types | rustc_symbol_mangling/src/v0 | |
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/terminator | |
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): Figure out how to reduce the number of arguments | tools/clippy/clippy_lints/src/len_zero | |
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): 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 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): `rustc_hir_typeck::method::suggest` uses a `skip_list` to filter out some bounds | rustc_hir_analysis/src/hir_ty_lowering/errors | |
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): Report a different error for `const gen` | rustc_ast_passes/src/ast_validation | |
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): 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) make this not an error | ui/const-generics/generic_const_exprs/unify-op-with-fn-call | |
FIXME(generic_const_exprs): Implement handling for generic | rustc_trait_selection/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): This doesn't recurse into `<T as Trait<U>>::ASSOC`'s args | rustc_trait_selection/src/traits/const_evaluatable | |
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/object_safety | |
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 currently do not support rigid | rustc_trait_selection/src/solve/normalizes_to/mod | |
FIXME(generic_const_exprs): we have a fully concrete `ConstKind::Expr`, but | rustc_trait_selection/src/traits/const_evaluatable | |
FIXME(generic_const_exprs): you can absolutely add this as a where clauses | rustc_trait_selection/src/traits/auto_trait | |
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 | |
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 leads to a stack overflow in the compiler! | ui/generic-const-items/recursive | |
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(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 | |
FIXME(rust-lang/rust/issues/77425) | rustc_mir_transform/src/check_const_item_mutation | |
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/error_reporting/note_and_explain rustc_infer/src/infer/opaque_types/mod | |
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(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): fix this ugly fragile test when `BacktraceFrame` has accessors like | ui/debuginfo/backtrace-line-tables-only | |
FIXME(jieyouxu): for some forsaken reason on i686-msvc `foo` doesn't have an entry in the | ui/debuginfo/backtrace-line-tables-only | |
FIXME(jieyouxu): make this test use proper accessors on `BacktraceFrames` once it has | ui/debuginfo/backtrace-dylib-dep | |
FIXME(jieyouxu): remove this check once all run-make tests are ported over to rmake.rs | tools/tidy/src/main | |
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): use proper `BacktraceFrame` accessors when it becomes available. Right now | ui/debuginfo/backtrace-dylib-dep | |
FIXME(jistone): the following was originally the fallback SSA implementation, before LLVM 13 | rustc_codegen_gcc/src/builder | |
FIXME(joboet): integrate RefCell into pointer to avoid infinite recursion | std/src/sys_common/thread_local_dtor | |
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(jubilee): In a just world, this would be the entire impl for classify | core/src/num/f32 core/src/num/f64 | |
FIXME(jubilee): This probably could at least answer things correctly for Infinity | core/src/num/f32 | |
FIXME(jubilee): Using x87 operations is never necessary in order to function | core/src/num/f32 core/src/num/f64 | |
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(jynelson): wow this is just so much | rustdoc/passes/collect_intra_doc_links | |
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_normalization): This is probably not right | rustc_middle/src/ty/fast_reject | |
FIXME(lazy_type_alias): Once the feature is complete or stable, rewrite this | rustdoc/html/render/write_shared | |
FIXME(lcnr, oli-obk): try moving this into the query inputs instead | rustc_type_ir/src/canonical | |
FIXME(lqd): Unify and de-duplicate the following with the actual | rustc_borrowck/src/diagnostics/bound_region_errors | |
FIXME(mati865): MinGW GCC miscompiles compiler-rt profiling library but with Clang it works | tools/compiletest/src/header | |
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) Merge into `tainted_by_errors` | rustc_infer/src/infer/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/object_safety | |
FIXME(mikeyhew) this is a total hack. Once object_safe_for_dispatch is stabilized, we can | rustc_trait_selection/src/traits/object_safety | |
FIXME(mikeyhew) when unsized receivers are implemented as part of unsized rvalues, add this | rustc_trait_selection/src/traits/object_safety | |
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 | |
FIXME(misdreavus): pass `-Z treat-err-as-bug` to the doctest parser | rustdoc/doctest | |
FIXME(mu001999) E0599 maybe not suitable here because it is for types | rustc_hir_typeck/src/method/suggest | |
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): `#[used]` are marked as reachable here so it's picked up by | rustc_passes/src/reachable | |
FIXME(negative-bounds): This bound should be rendered negative, but | rustdoc/json/conversions | |
FIXME(never_patterns): Desugar into a call to `unreachable_unchecked` | rustc_ast_lowering/src/expr | |
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): 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): Placeholders don't currently | rustc_trait_selection/src/traits/query/type_op/implied_outlives_bounds | |
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(notriddle): rust-lang/rust/issues/97129 | rustdoc/passes/collect_trait_impls | |
FIXME(oli-obk): Also do region checks here and then consider removing | rustc_borrowck/src/region_infer/opaque_types | |
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/build/matches/util | |
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 real | 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): try out bubbling this error up one level and cancelling the other error in that case | rustc_hir_typeck/src/method/suggest | |
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/build/matches/mod | |
FIXME(or_patterns; matthewjasper) Try to be more aggressive here | rustc_mir_build/src/build/matches/mod | |
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_middle/src/ty/fast_reject | |
FIXME(pcwalton): This probably should use the x86 `byval` ABI | rustc_target/src/abi/call/mod | |
FIXME(pietroalbini): this test currently does not work on cross-compiled | 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_infer/src/infer/error_reporting/nice_region_error/static_impl_trait | |
FIXME(precise_capturing): Implement formatting | tools/rustfmt/src/types | |
FIXME(precise_capturing): Implement support here | tools/rustfmt/src/types | |
FIXME(precise_capturing): Investigate storing this as a path instead? | rustc_hir/src/hir | |
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_trait_selection/src/solve/normalizes_to/mod rustc_trait_selection/src/traits/project | |
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): 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): This check should be more robust | rustc_hir_analysis/src/collect/predicates_of | |
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(richkadel): In Issue #77615 discussed updating the `rustc-demangle` library, to provide | tools/rust-demangler/src/main | Closed |
FIXME(rust-lang/cargo#5754) we shouldn't be using special command arguments | bootstrap/src/core/builder | 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/no_effect tools/clippy/clippy_lints/src/no_effect 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(slow): quote! have a way to expand to builder to make this a vec! | tools/rust-analyzer/crates/hir-expand/src/builtin_fn_macro tools/rust-analyzer/crates/hir-expand/src/builtin_fn_macro | |
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(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 | core/src/ptr/const_ptr core/src/ptr/const_ptr core/src/ptr/const_ptr core/src/ptr/mod core/src/ptr/mod core/src/ptr/mod core/src/ptr/mod core/src/ptr/mut_ptr core/src/ptr/mut_ptr core/src/ptr/mut_ptr 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(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/?): 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_alias): Implement trait alias | tools/rust-analyzer/crates/hir-ty/src/lower | |
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/eval_ctxt/mod | |
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_infer/src/infer/error_reporting/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(unused_imports): Add this back as a new lint | rustc_resolve/src/imports | |
FIXME(unused_imports): ~ WARNING the item `None` is imported redundantly | ui/lint/use-redundant/use-redundant-prelude-rust-2015 | |
FIXME(unused_imports): ~^ ERROR the item `TryFrom` is imported redundantly | ui/imports/suggest-remove-issue-121315 ui/imports/suggest-remove-issue-121315 | |
FIXME(unused_imports): ~^ ERROR the item `aux_issue_121915` is imported redundantly | ui/imports/redundant-import-extern-prelude ui/imports/redundant-import-issue-121915-2015 | |
FIXME(unused_imports): ~^ ERROR the item `u8` is imported redundantly | ui/imports/redundant-import-lang-prelude | |
FIXME(unused_imports): ~^ WARNING the item `Err` is imported redundantly | ui/lint/use-redundant/use-redundant-prelude-rust-2015 | |
FIXME(unused_imports): ~^ WARNING the item `Ok` is imported redundantly | ui/lint/use-redundant/use-redundant-prelude-rust-2015 | |
FIXME(unused_imports): ~^ WARNING the item `Some` is imported redundantly | ui/lint/use-redundant/use-redundant-prelude-rust-2015 | |
FIXME(unused_imports): ~^ WARNING the item `String` is imported redundantly | ui/lint/use-redundant/use-redundant-issue-71450 | |
FIXME(unused_imports): ~^ WARNING the item `TryFrom` is imported redundantly | ui/lint/use-redundant/use-redundant-prelude-rust-2021 | |
FIXME(unused_imports): ~^ WARNING the item `TryInto` is imported redundantly | ui/lint/use-redundant/use-redundant-prelude-rust-2021 | |
FIXME(unused_imports): ~| ERROR the item `Into` is imported redundantly | ui/imports/suggest-remove-issue-121315 | |
FIXME(unused_imports): ~| ERROR the item `TryInto` is imported redundantly | ui/imports/suggest-remove-issue-121315 | |
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 | 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(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): Send and Sync impls | core/src/future/async_drop | |
FIXME(zetanumbers): consider AsyncDestruct::async_drop cleanup tests | tools/miri/tests/pass/async-drop ui/async-await/async-drop | |
FIXME**: Document exactly which `CastKind`s allow which types of casts. Figure out why | rustc_middle/src/mir/syntax 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/rust_analyzer_span tools/rust-analyzer/crates/proc-macro-srv/src/server/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-NEXT: icmp eq i8 | codegen/option-niche-eq | |
FIXME-CHECK-NEXT: ret i1 | codegen/option-niche-eq | |
FIXME-CHECK-lABEL: @bool_eq | 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_infer/src/infer/error_reporting/mod | |
FIXME: "if-available" is deprecated. Remove this block later (around mid 2024) | bootstrap/src/core/config/config | Closed |
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: #[const_trait] | ui/rfcs/rfc-2632-const-trait-impl/effects/project | |
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: (async) gen closures aren't yet parsed | rustc_parse/src/parser/expr | |
FIXME: ...which hopefully allows us to simplify this | rustdoc/clean/auto_trait | |
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: 91167 | run-make/raw-dylib-alt-calling-convention/lib | Open |
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: Actually make use of `features` | rustdoc/clean/cfg | |
FIXME: Add Checks for these | rustc_const_eval/src/transform/validate | |
FIXME: Add Snippet Support | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/unresolved_field | |
FIXME: Add UI tests for this error | rustc_codegen_ssa/src/back/link | |
FIXME: Add a test for this. It seems to be necessary for typenum but | rustc_trait_selection/src/solve/assembly/mod | |
FIXME: Add an assertion that opaque type storage is empty | rustc_trait_selection/src/solve/normalizes_to/opaque_types | |
FIXME: Add bless option | tools/compiletest/src/runtest | |
FIXME: Add check for trait bound that is already present, particularly `?Sized` so we | rustc_trait_selection/src/traits/error_reporting/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 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: 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_llvm/src/back/lto | |
FIXME: Allow Redox prefixes | std/src/path | |
FIXME: Allow attributes in pattern constexprs? | ui/parser/attribute/attr-stmt-expr-attr-bad | |
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, include column numbers into the debug format as Display already has them | std/src/backtrace | |
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 "complex" nonterminal are not equal, we can't compare them | rustc_ast/src/token | |
FIXME: Bad copy of attrs | rustc_parse/src/parser/stmt | |
FIXME: Be more granular about why, (e.g. syntax error, count not equal) | tools/jsondocck/src/main | |
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: Breaking here and proceeding to `count()` isn't the most | tools/rust-analyzer/crates/mbe/src/expander/transcriber | |
FIXME: Broken false positives, currently unhandled | tools/clippy/tests/ui/uninlined_format_args | |
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 we do this for arguments as well? | rustc_mir_transform/src/nrvo | |
FIXME: Can we remove this somehow? | tools/rust-analyzer/crates/hir-expand/src/mod_path | |
FIXME: Can't use s.split_first() here yet | core/src/num/dec2flt/common core/src/num/dec2flt/parse | |
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: Check if the signature matches | rustc_const_eval/src/interpret/validity | |
FIXME: Check metadata more generally | rustc_const_eval/src/transform/validate | |
FIXME: Check other kinds of non-coercion casts and report error if any? | tools/rust-analyzer/crates/hir-ty/src/infer/cast | |
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: Combine these two 'if' expressions into one once | rustc_hir_typeck/src/fn_ctxt/_impl | |
FIXME: ComparableTraitRef does not support nested bounds needed for associated_type_bounds | tools/clippy/clippy_lints/src/trait_bounds | |
FIXME: Consider applying `#[inline]` / `#[inline(never)]` optimizations already applied | std/src/io/buffered/bufwriter | |
FIXME: Consider doing normalization in the `vfs` instead? That allows | tools/rust-analyzer/crates/rust-analyzer/src/global_state | |
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 making some of these prefix flags opt-in per test | tools/compiletest/src/runtest | |
FIXME: Consider moving this check to the top level as it | rustc_trait_selection/src/traits/select/candidate_assembly | |
FIXME: Consider moving this method to a more fitting place | rustc_hir_analysis/src/check/mod | |
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_infer/src/infer/error_reporting/need_type_info | |
FIXME: Consider using the derive resolutions (`_exts`) | rustc_expand/src/expand | |
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: Convert to DebugWithInfcx impl | rustc_type_ir/src/predicate_kind rustc_type_ir/src/predicate_kind | |
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: Currently only handles ?Sized | rustc_trait_selection/src/traits/specialize/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 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 only report suggestions if the `RegionNameSource` is an early-bound | rustc_borrowck/src/diagnostics/outlives_suggestion | |
FIXME: DSTs with static alignment should be allowed | rustc_hir_typeck/src/expr rustc_hir_typeck/src/expr | |
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: 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/terminator | |
FIXME: Detect and report the deadlock proactively. (We currently | tools/miri/src/shims/unix/sync | |
FIXME: Determine place validity correctly. For now, err on the safe side | tools/rust-analyzer/crates/hir-ty/src/diagnostics/match_check/pat_analysis | |
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: Diagnostic spans are inconsistent inside and outside closure | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/mutability_errors | |
FIXME: Do some kind of check of the inner type, like for Scalar and ScalarPair | rustc_ty_utils/src/layout_sanity_check | |
FIXME: Do the extra work to GVN `from_raw_parts` | rustc_mir_transform/src/gvn | |
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 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 still need this now that we record import origins, and hence aliases? | tools/rust-analyzer/crates/hir-def/src/find_path | |
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/build/expr/into | |
FIXME: Doesn't handle "path-like" primitives like arrays or tuples | rustdoc/html/render/span_map | |
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 inline user-written `extern "rust-call"` functions | rustc_mir_transform/src/inline | |
FIXME: Due to #50507 this overwrites the different values | rustc_trait_selection/src/traits/select/mod | Open |
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/typing tools/rust-analyzer/crates/ide-completion/src/context | |
FIXME: Edition based parsing | tools/rust-analyzer/crates/base-db/src/lib | |
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/mbe/src/syntax_bridge | |
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: Experiment with choosing most common words in overall data set | tools/unicode-table-generator/src/raw_emitter | |
FIXME: Expose a builder api as loading the sysroot got way too modular and complicated | tools/rust-analyzer/crates/project-model/src/sysroot | |
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 way to pass the entire line spans | rustc_codegen_llvm/src/asm | |
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 express this using `Option::clone_from`, or maybe lift it into the | rustc_mir_dataflow/src/framework/direction | |
FIXME: Figure out how to remove `visibilities_for_hashing` by hashing visibilities on | rustc_middle/src/hir/map/mod | |
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: 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_scripts | |
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/collector/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: 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 owners of blocks correctly here | tools/rust-analyzer/crates/ide/src/navigation_target | |
FIXME: Handling opaques here is kinda sus. Especially because we | rustc_trait_selection/src/solve/trait_goals | |
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 decide between `width` and `width_cjk`? | rustc_span/src/analyze_source_file | |
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: I can figure out how to do a label with a fluent string with a fixed message | rustc_monomorphize/src/errors | |
FIXME: I guess we could also check something here? Like, look at all fields? | rustc_ty_utils/src/layout_sanity_check rustc_ty_utils/src/layout_sanity_check | |
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: IDE layer has this unresolved | tools/rust-analyzer/crates/ide/src/syntax_highlighting/tests | |
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_infer/src/infer/error_reporting/need_type_info | |
FIXME: Ideally we should support this. For that | rustc_infer/src/infer/error_reporting/need_type_info | |
FIXME: Ideally we would support this in some way | tools/rust-analyzer/crates/rust-analyzer/src/config | |
FIXME: IdentClass as a name no longer fits | tools/rust-analyzer/crates/ide-db/src/defs | |
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 | |
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 fat pointer is a `Box` then we don't want to use its | rustc_codegen_llvm/src/debuginfo/metadata | |
FIXME: If this span comes from a `derive` macro but it points at code the user wrote | rustc_span/src/lib | |
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 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, try 'peeling back' each step, and see at what level the match failed | tools/jsondocck/src/main | |
FIXME: In which cases should we trigger UB when the source is uninit? | rustc_const_eval/src/interpret/cast | |
FIXME: Inherited `impl Trait`s create query cycles when used inside trait impls | ui/delegation/not-supported | |
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 doing this, we could move this whole loop | rustc_ast_lowering/src/lib | |
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: Intermix attribute and bang! expansions | tools/rust-analyzer/crates/ide/src/expand_macro | |
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 way in which we can re-use the usual `run` helpers? | bootstrap/src/core/build_steps/test | |
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 | |
FIXME: It needs to be removed, but there are some | rustc_expand/src/proc_macro_server | |
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 also be cool to share logic here and in the mbe tests | tools/rust-analyzer/crates/ide-db/src/syntax_helpers/insert_whitespace_into_node | |
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 very weird that we ignore region obligations but apparently | rustc_trait_selection/src/traits/mod | |
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_trait_selection/src/solve/eval_ctxt/canonical | |
FIXME: MSVC 2015+ will pass the first 3 vector arguments in [XYZ]MM0-2 | rustc_target/src/abi/call/x86 | Closed |
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 checking for a submodule automatic somehow (maybe by having a list of all submodules | bootstrap/src/core/build_steps/doc | |
FIXME: Make the control flow more proper | tools/rust-analyzer/crates/ide-db/src/syntax_helpers/node_ext | |
FIXME: Make this `ocx.sup` once we define opaques more eagerly | rustc_hir_typeck/src/method/probe rustc_hir_typeck/src/method/probe rustc_hir_typeck/src/method/probe | |
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 smaller, its stored in database queries | tools/rust-analyzer/crates/hir-ty/src/mir/lower | |
FIXME: Make use of this so that mir interpretation works properly | tools/rust-analyzer/crates/hir-expand/src/builtin_fn_macro | |
FIXME: Marked `mut` so that we can replace the spans further below with a more | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME: Maybe a more elegant solution to this if else case | rustc_const_eval/src/transform/check_consts/ops | |
FIXME: Maybe do something smarter for Ref types too? | rustc_codegen_ssa/src/traits/builder | |
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 we should merge copy and clone in a single flag? | tools/rust-analyzer/crates/ide-diagnostics/src/tests | |
FIXME: Merge into `Node::Infer` | rustc_hir/src/hir | |
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 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: Microoptimize and return a `SmolStr` here | tools/rust-analyzer/crates/ide-assists/src/utils/suggest_name | |
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: Move `/LIBPATH` addition for uwp targets from the linker construction | rustc_codegen_ssa/src/back/linker | |
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 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 out, its not a diagnostic only thing anymore, and handle unsafe pattern accesses as well | tools/rust-analyzer/crates/hir-ty/src/diagnostics/unsafe_check | |
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: Multiple derives can have the same helper | tools/rust-analyzer/crates/hir/src/source_analyzer | |
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: NewPM doesn't provide a facility to pass custom InlineParams | rustc_codegen_llvm/src/back/write | |
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/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: Once `ErrorKind::DirectoryNotEmpty` is stabilized | bootstrap/src/core/build_steps/clean | |
FIXME: Once `lazy_type_alias` is stabilized(?) we should use `rustc_middle` types instead | tools/clippy/clippy_lints/src/casts/cast_lossless | |
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 can remove the | 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/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 remove support for the old impl we can remove this | rustc_trait_selection/src/solve/eval_ctxt/mod | |
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 object safe | 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 store the present set when running in incremental mode. `iter` is not | rustc_query_system/src/query/caches | |
FIXME: Only works cross-crate | ui/const-generics/legacy-const-generics | |
FIXME: Optimize for checking for infer flags | rustc_type_ir/src/visit | |
FIXME: Other patterns may also be nested. Currently it simply supports only `TupleStructPat` | tools/rust-analyzer/crates/ide-assists/src/utils | |
FIXME: Our infra can't handle allow from within macro expansions rn | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/mutability_errors tools/rust-analyzer/crates/ide-diagnostics/src/handlers/mutability_errors 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: 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 | |
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 | |
FIXME: Perhaps use Intel TSX to avoid locking? | std/src/sys/pal/sgx/waitqueue/spin_mutex | |
FIXME: Probably a bad idea | rustc_data_structures/src/sync | |
FIXME: Probably a bad idea (in the threaded case) | 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: RA purposefully lacks knowledge of absolute file names | tools/rust-analyzer/crates/hir-expand/src/builtin_fn_macro | |
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/transform/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 allocations | tools/rust-analyzer/crates/hir-def/src/find_path | |
FIXME: Remove check that the place is initialized. This is | rustc_borrowck/src/lib | |
FIXME: Remove duplicated code | tools/rustfmt/src/reorder | |
FIXME: Remove once `rustc_hir_typeck` is migrated to diagnostic structs | rustc_infer/src/infer/error_reporting/suggest | |
FIXME: Remove the assume after <llvm/llvm-project/issues/62502> | core/src/ptr/mod | |
FIXME: Remove the comments once stablized | 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 in favor of always using more strongly typed variants | rustc_middle/src/traits/solve/inspect | |
FIXME: Remove this once rustc switched over to rust-project.json | tools/rust-analyzer/crates/project-model/src/workspace | |
FIXME: Remove this once we drop support for 1.76 | tools/rust-analyzer/crates/hir-expand/src/declarative | |
FIXME: Remove this once we drop support for rust 1.76 (defaults to true then) | tools/rust-analyzer/crates/mbe/src/lib tools/rust-analyzer/crates/mbe/src/lib | |
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? | tools/rust-analyzer/crates/ide-db/src/imports/insert_use | |
FIXME: Rename this to indicate the borrow is actually not immutable | rustc_middle/src/ty/closure | |
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 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/rust_analyzer_span tools/rust-analyzer/crates/proc-macro-srv/src/server/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: Restore these assertions. Should we uplift type flags? | rustc_next_trait_solver/src/canonicalizer | |
FIXME: Return a `Name` here | tools/rust-analyzer/crates/hir/src/lib tools/rust-analyzer/crates/hir/src/lib | |
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, 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_sanity_check | |
FIXME: See #115212 for why this has an alloca again | codegen/swap-small-types | Closed |
FIXME: See above, unfortunately some places really need this right now | tools/rust-analyzer/crates/hir-expand/src/name | |
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_infer/src/infer/error_reporting/suggest | |
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 ItemCtxt take a LocalDefId? | rustc_hir_analysis/src/collect/predicates_of | |
FIXME: Should `InPlace` arguments be reset to uninit? | rustc_const_eval/src/interpret/terminator | |
FIXME: Should be `@!has`: rust-lang/rust/issues/111249 | rustdoc/issue-111064-reexport-trait-from-hidden-2 rustdoc/issue-111249-file-creation rustdoc/redirect | |
FIXME: Should be an error for edition > 2015 | ui/conditional-compilation/cfg_accessible-not_sure | Closed |
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 | |
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 just have two separate dedup maps for statics and functions each? | rustc_middle/src/mir/interpret/mod | |
FIXME: Should we move this to the "libc" crate? It seems like other | std/src/sys/pal/zkvm/abi | |
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: Simply use `NonZero::new` once it is actually generic | core/src/num/uint_macros core/src/num/uint_macros | |
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/mbe/src/syntax_bridge | |
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_trait_selection/src/solve/eval_ctxt/mod | |
FIXME: String de-duplication is needed so that we only allocate this string only once | tools/miri/src/shims/time | |
FIXME: String escape? | tools/rust-analyzer/crates/hir/src/display | |
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: Suggested fix results in infinite recursion | tools/clippy/tests/ui/use_self | |
FIXME: Super inefficient to be cloning this | rustc_trait_selection/src/solve/eval_ctxt/mod | |
FIXME: Support ftruncate64 for all FDs | tools/miri/src/shims/unix/fs | |
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: 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_trait_selection/src/solve/assembly/structural_traits | |
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: Temporary fix for rust-lang/cargo/issues/3005 | bootstrap/src/core/builder | |
FIXME: That assumption might not be true for [`TerminatorKind::Yield`]? | rustc_mir_transform/src/coverage/graph | |
FIXME: The ABI implementation in cabi_s390x.rs is for now hard-coded to assume the no-vector | rustc_target/src/spec/targets/s390x_unknown_linux_gnu rustc_target/src/spec/targets/s390x_unknown_linux_musl | |
FIXME: The Rust compiler currently omits weakly function definitions (i.e | std/src/sys/pal/unix/thread_local_dtor | |
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 assumes we're using the non-vector ABI, i.e., compiling | rustc_target/src/abi/call/s390x | |
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 had debug messages claiming to add items to a | rustc_mir_transform/src/coverage/graph | |
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 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 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 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 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 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 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/spans/from_mir | |
FIXME: There should be optimization potential here | tools/rust-analyzer/crates/ide-db/src/search | |
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 methods should not take an Into<MultiSpan> -- instead, callers should need to | rustc_lint/src/context | |
FIXME: These should be consistent | ui/rust-2018/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_trait_selection/src/solve/assembly/mod | |
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 BOGUS here is dangerous once the proc-macro server can call back into the database! | tools/rust-analyzer/crates/hir-expand/src/db | |
FIXME: This actually generates tighter assembly, and is a classic trick | rustc_codegen_ssa/src/mir/rvalue | |
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_trait_selection/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 becomes quite expensive for big files | tools/rust-analyzer/crates/ide-diagnostics/src/lib | |
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-def/src/attr/builtin | |
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 changed to simply `self.0` once LLVM supports `!range` metadata | core/src/num/nonzero | |
FIXME: This can be de improved | tools/rust-analyzer/crates/ide/src/navigation_target | |
FIXME: This can be removed once `Option::unwrap` is stably const | std/src/sys/pal/windows/args | |
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 once `NonZero<T>` is stable | rustc_hir_typeck/src/fn_ctxt/suggestions tools/clippy/clippy_lints/src/transmute/transmute_int_to_non_zero | |
FIXME: This can definitely not be so spaghettified | rustc_sanitizers/src/cfi/typeid/itanium_cxx_abi/encode | |
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 check requires that the (arbitrary) value of undefined bytes | rustc_codegen_gcc/src/consts rustc_codegen_llvm/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 claims to skip just the self-successor, but it actually skips | rustc_mir_transform/src/coverage/graph | |
FIXME: This code cannot yet handle no_std test cases yet | rustdoc/doctest | |
FIXME: This code doesn't emit errors itself, the caller emits the errors | rustc_mir_build/src/thir/pattern/const_to_pat | |
FIXME: This code is quite ugly and could be improved. Small issue: DefId | rustdoc/html/render/print_item | |
FIXME: This could be a `Sorts` if the term is a type | rustc_trait_selection/src/solve/fulfill | |
FIXME: This could handle more exotic cases like mutability mismatches too! | rustc_trait_selection/src/traits/error_reporting/suggestions | |
FIXME: This could maybe benefit from `.may_recover()`? | rustc_parse/src/parser/item rustc_parse/src/parser/item | |
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 crate now handles running `cargo test` needed in the test explorer in | tools/rust-analyzer/crates/flycheck/src/lib | |
FIXME: This creates a new allocation each time. It might be preferable to | rustc_const_eval/src/util/caller_location | |
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 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 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/mod | |
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 duplicates code in codegen | rustc_lint/src/types | |
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 currently only implements the bits that influence the type | tools/rust-analyzer/crates/hir-ty/src/infer/cast | |
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 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 has slightly different semantics than `{probe,resolve}_{ty,ct}_var` | rustc_type_ir/src/infcx | |
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 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 hack so we can push to the dirlist vec after borrowing from it | std/src/sys/pal/windows/fs | |
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 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/object_safety | |
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 broken | tools/rust-analyzer/crates/hir-def/src/body/scope | |
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 currently wrong if we don't even try any | rustc_trait_selection/src/solve/inspect/analyse | |
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 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 for async closures | rustc_const_eval/src/transform/validate | |
FIXME: This is not totally structual, which probably should be fixed | rustc_middle/src/ty/relate | |
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 necessary as `<Self as Trait>::Assoc: ItemBound` | rustc_trait_selection/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 slow if `other` is dense, but it hasn't been a problem | rustc_index/src/bit_set rustc_index/src/bit_set | |
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 used for a lot of things, unresolved proc macros, disabled proc macros, etc | tools/rust-analyzer/crates/hir-def/src/nameres/diagnostics | |
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, idk if we even want to track stuff here | rustc_trait_selection/src/solve/eval_ctxt/select | |
FIXME: This is wrong, this should not mark the last as active | tools/rust-analyzer/crates/ide/src/signature_help | |
FIXME: This isn't really used anymore, at least not in a way where it does anything useful | tools/rust-analyzer/crates/hir-def/src/trace | |
FIXME: This isn't true due to `super::*` imports? | tools/rust-analyzer/crates/ide-assists/src/handlers/replace_qualified_name_with_use | |
FIXME: This kind of error fetching feels a bit odd? | tools/rust-analyzer/crates/hir-def/src/nameres/collector | |
FIXME: This lint uses some custom span combination logic | ui/lint/wide_pointer_comparisons | |
FIXME: This match is a bit ugly, it might be nice to change the inspect | rustc_trait_selection/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_trait_selection/src/solve/normalizes_to/opaque_types | |
FIXME: This may recurse infinitely, but I can't seem to trigger it without | rustc_trait_selection/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/abi/call/sparc64 | |
FIXME: This needs tests to ensure that the arguments are properly | std/src/sys/pal/windows/args | |
FIXME: This needs to be more precise. Reference category makes sense only | tools/rust-analyzer/crates/ide/src/highlight_related | |
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 operates on the syntax tree and will produce incorrect results when | tools/rust-analyzer/crates/ide-completion/src/context/analysis | |
FIXME: This parses! | 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 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 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 be Array(Box<TypeRef>, Ast<ConstArg>) | tools/rust-analyzer/crates/hir-def/src/hir/type_ref | |
FIXME: This should be a HashMap<FileId, ChangeFile> | tools/rust-analyzer/crates/vfs/src/lib | |
FIXME: This should be a `MirLint`, but it needs to be moved back to `rustc_mir_transform` first | rustc_mir_dataflow/src/rustc_peek | |
FIXME: This should be a `span_suggestion` instead of `help` | rustc_hir_typeck/src/method/probe | |
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 done for everything, but check perf first | tools/rust-analyzer/crates/ide/src/syntax_highlighting | |
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 removed once ICU4X crates update | tools/tidy/src/deps | |
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 become `map` again, once it's `const` | core/src/str/error | |
FIXME: This should check all import infos, not just the first | tools/rust-analyzer/crates/hir-def/src/import_map | |
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 have its own syntax, distinct from a macro invocation | rustc_ast_pretty/src/pprust/state/expr rustc_ast_pretty/src/pprust/state/expr | |
FIXME: This should ideally use a fully qualified path | ui/impl-trait/diagnostics/fully-qualified-path-impl-trait | |
FIXME: This should just be `VecDeque::new_in(Global)` once that hits stable | alloc/src/collections/vec_deque/mod | |
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 potentially just add the obligation to the `FnCtxt` | rustc_hir_typeck/src/op | |
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 to conditionally remapped under | rustc_metadata/src/rmeta/encoder | |
FIXME: This should return a different type, signaling it was filtered? | tools/rust-analyzer/crates/hir-expand/src/attrs | |
FIXME: This should show a diagnostic | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/unresolved_ident | |
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 trigger error | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/typed_hole | |
FIXME: This should use `?` again, once it's `const` | core/src/str/converts | |
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 probably clone lmao | rustc_ast_pretty/src/pprust/state | |
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 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 whole logic is questionable, whether modifiers are | rustc_metadata/src/native_libs | |
FIXME: This will be wrong if we ever add inherent impls | rustdoc/clean/types | |
FIXME: This will be wrong if we have param-env or where-clause bounds | rustc_trait_selection/src/solve/eval_ctxt/select | |
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: To be removed once we get rid of all `SpanData::DUMMY` usages | tools/rust-analyzer/crates/vfs/src/lib | |
FIXME: Transmuting formatter in new and indirectly branching to/calling | core/src/fmt/rt | |
FIXME: Try running this logic eariler, 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: Upgrade to `object-rs` 0.33+ implementation with visionOS platform definition | rustc_target/src/spec/base/apple/mod rustc_target/src/spec/base/apple/mod | |
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/transform/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 `visit_infer` here | rustc_hir/src/intravisit | |
FIXME: Use an 'if let' guard once they are implemented | rustc_builtin_macros/src/test | |
FIXME: Use correct span? | tools/rustfmt/src/imports | |
FIXME: Use multi-line when every thing does not fit on one line | tools/rustfmt/src/macros | |
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 by crossbeam-utils, but we should not be triggering on external dependencies | bootstrap/src/lib | |
FIXME: Used by filetime, but we should not be triggering on external dependencies | bootstrap/src/lib | |
FIXME: Used by proc-macro2, but we should not be triggering on external dependencies | bootstrap/src/lib | |
FIXME: Used by rustix, but we should not be triggering on external dependencies | bootstrap/src/lib | |
FIXME: Used by serde_json, but we should not be triggering on external dependencies | bootstrap/src/lib | |
FIXME: Used only from queries and can use query cache | rustc_metadata/src/rmeta/decoder | |
FIXME: Using host floats | tools/miri/src/shims/foreign_items tools/miri/src/shims/foreign_items tools/miri/src/shims/foreign_items tools/miri/src/shims/foreign_items tools/miri/src/shims/foreign_items tools/miri/src/shims/foreign_items tools/miri/src/shims/intrinsics/mod tools/miri/src/shims/intrinsics/mod tools/miri/src/shims/intrinsics/mod tools/miri/src/shims/intrinsics/mod tools/miri/src/shims/intrinsics/mod tools/miri/src/shims/intrinsics/mod | |
FIXME: Using host floats, to work around rust-lang/rustc_apfloat/issues/11 | tools/miri/src/shims/intrinsics/mod tools/miri/src/shims/intrinsics/mod | |
FIXME: We are currently creating two branches here in order to maintain | rustc_hir_typeck/src/expr | |
FIXME: We are just dropping the binders in lifetime_defs on the floor here | rustc_parse/src/parser/generics | |
FIXME: We are missing the rules for "repr(C) wrapping compatible types" | rustc_const_eval/src/interpret/terminator | |
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/pal/wasm/alloc | |
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 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't identify variables in a subdiagnostic | rustc_macros/src/diagnostics/diagnostic | |
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 make this faster by making a no-constraints response | rustc_trait_selection/src/solve/trait_goals | |
FIXME: We could probably actually just unify this further | rustc_hir_typeck/src/closure | |
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 skip these goals as | rustc_trait_selection/src/solve/inspect/analyse | |
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_infer/src/infer/error_reporting/need_type_info | |
FIXME: We discard parse errors here | tools/rust-analyzer/crates/hir-expand/src/eager | |
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 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 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 just put expression here so highlighting kind of keeps working | tools/rust-analyzer/crates/parser/src/grammar/expressions/atom | |
FIXME: We make sure that this is a normal top-level binding | rustc_borrowck/src/diagnostics/conflict_errors | |
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 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/tt_iter | |
FIXME: We only need to do *any* of this if we're considering a trait goal | rustc_trait_selection/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_trait_selection/src/solve/eval_ctxt/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_infer/src/infer/error_reporting/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 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 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 merge these 3 implementations as it's likely that they otherwise | rustc_trait_selection/src/solve/normalizes_to/mod | |
FIXME: We should only try to evaluate a given constant here if it is fully concrete | rustc_trait_selection/src/traits/const_evaluatable | |
FIXME: We should probably have a helper method to share code with the "Byte strings" | rustc_middle/src/ty/print/pretty | |
FIXME: We should report both errors! | tools/rust-analyzer/crates/hir-expand/src/db | |
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 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 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_middle/src/traits/solve | |
FIXME: We will need to preserve the original semicolon token and | rustc_expand/src/placeholders | |
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_macro_call | tools/rust-analyzer/crates/hir-def/src/nameres/diagnostics | |
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 we get VLAs, try creating one array of length `min(v.len(), 2 * BLOCK)` rather | core/src/slice/sort | |
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 this matches the behavior of the | rustc_trait_selection/src/traits/coherence | |
FIXME: Whitespace is not part of the matched block | tools/rust-analyzer/crates/ide-ssr/src/tests | |
FIXME: Why don't these have their own structs? | tools/jsondoclint/src/validator | |
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/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: Without const traits, we need this instead of `get_unchecked` | core/src/slice/mod core/src/slice/mod | |
FIXME: Working around rust-lang/rust/issues/54385 | rustc_const_eval/src/interpret/place rustc_const_eval/src/interpret/projection | |
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 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: [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: `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: `cfg(TRUE)` attributes do not currently remove themselves during expansion | rustc_expand/src/expand | |
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/mod | |
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: `impl Trait<'a> + 'b` should live as long as 'b, even if 'b outlives 'a | ui/impl-trait/lifetimes | |
FIXME: `parse_prefix_range_expr` is called when the current | rustc_parse/src/parser/expr | |
FIXME: `rerun-if-changed` directives are not currently emitted and the build script | profiler_builtins/build | |
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: `target_os = "ios"`? | std/src/sys/pal/unix/process/process_unix | |
FIXME: `trait_ref.path.span` can point to a full path with multiple | rustc_hir_analysis/src/hir_ty_lowering/errors | |
FIXME: `unicode_width` sometimes disagrees with terminals on how wide a `char` | rustc_errors/src/emitter | |
FIXME: `usize`` once we drop support for 1.76 | tools/rust-analyzer/crates/mbe/src/parser | |
FIXME: a hacky way to create a Name from string | tools/rust-analyzer/crates/hir-def/src/nameres/collector tools/rust-analyzer/crates/hir-def/src/nameres/collector | |
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_infer/src/infer/error_reporting/note_and_explain | |
FIXME: account for associated `async fn`s | rustc_trait_selection/src/traits/error_reporting/suggestions | |
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_infer/src/infer/error_reporting/note_and_explain | |
FIXME: account for the need of parens in `&(dyn Trait + '_)` | rustc_infer/src/infer/error_reporting/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/traits/error_reporting/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 capture place to original local) | rustc_borrowck/src/diagnostics/conflict_errors | |
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 checks for x2. Currently, their MIRs are not symmetric in the two | mir-opt/dataflow-const-prop/enum | |
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/traits/error_reporting/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 some mechanism for synchronization of this commit SHA with | tools/opt-dist/src/main | |
FIXME: add support for `// only-atomic` to compiletest/header.rs | ui/lint/lint-invalid-atomic-ordering-int | |
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 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: allow using the names of the tools themselves? | bootstrap/src/core/build_steps/dist | |
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: always pass this after the next `#[cfg(bootstrap)]` update | bootstrap/src/core/builder | |
FIXME: ar_archive_writer doesn't support COFF archives yet | rustc_codegen_ssa/src/back/archive | |
FIXME: ask Cargo to provide this data instead of re-deriving | tools/rust-analyzer/crates/project-model/src/env | |
FIXME: at some point we should call queries without defining | rustc_trait_selection/src/solve/normalizes_to/opaque_types | |
FIXME: avoid this clone (requires implementing Default manually) | rustdoc/formats/cache | |
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: boiiii, using string comparisions here sure is scuffed | rustc_trait_selection/src/traits/coherence | |
FIXME: broken test, this should fix visibility of the re-export | tools/rust-analyzer/crates/ide-assists/src/handlers/fix_visibility | |
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: 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 just pass `info` along rather than taking it apart here, only to have | std/src/panicking | |
FIXME: can we prefer the one from the sysroot? | tools/miri/src/helpers | |
FIXME: can we somehow avoid looking up the allocation twice here? | rustc_const_eval/src/interpret/memory | |
FIXME: can we somehow preserve the immutability of `ptr`? | tools/miri/src/machine | |
FIXME: can we support utf8 here? `args` doesn't accept Vec<u8>, only OsString | bootstrap/src/core/download | |
FIXME: capture the generics from the outer adt | rustc_ast_lowering/src/lib | |
FIXME: cargo bench/install do not accept `--release` | bootstrap/src/core/builder | |
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_const_eval/src/transform/validate | |
FIXME: check path types | tools/rust-analyzer/crates/ide/src/inlay_hints/fn_lifetime_fn | |
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 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: cmd.current_dir(&affected_workspace); | tools/rust-analyzer/crates/flycheck/src/lib | |
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/shims/intrinsics/atomic | |
FIXME: compiletest + extern crates doesn't work together. To make this test work, it would need | tools/clippy/tests/ui/crashes/mut_mut_macro | |
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 crates\hir_def\src\nameres\attr_resolution.rs? | tools/rust-analyzer/crates/hir/src/lib tools/rust-analyzer/crates/hir/src/lib | |
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_infer/src/infer/error_reporting/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: const stability attributes should not be required here, I think | core/src/ffi/c_str | |
FIXME: const-hack: Revert to `slice::get` after `const_slice_index` | 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: 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 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 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: 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: deprecated, replace with LLVMMDNodeInContext2 | rustc_codegen_llvm/src/llvm/ffi | |
FIXME: deprecated, replace with LLVMMDStringInContext2 | rustc_codegen_llvm/src/llvm/ffi | |
FIXME: derive Eq for AllocRange in rustc | tools/miri/src/concurrency/range_object_map | |
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: detect if name already used | tools/rust-analyzer/crates/ide-assists/src/handlers/destructure_tuple_binding | |
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: disable validation if there's an attribute, since some proc macros use this syntax | tools/rust-analyzer/crates/syntax/src/validation | |
FIXME: disabled on nvptx64 since the target ABI fails the sanity check | ui/abi/compatibility | |
FIXME: disabled since it fails on CI saying the csky component is missing | tools/tidy/src/target_policy assembly/targets/targets-elf ui/abi/compatibility | |
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 need to traverse out of block expressions here? | tools/rust-analyzer/crates/hir-def/src/find_path | |
FIXME: do we want to allow `expr -> pattern` conversion to create path expressions? | rustc_ast_lowering/src/pat | |
FIXME: do we want to commit to this behavior for param bounds? | rustc_hir_typeck/src/method/probe | |
FIXME: does the None variant make sense? Probably not | tools/rust-analyzer/crates/ide-db/src/assists | |
FIXME: does this fail if this is a direct expansion of another macro? | tools/rust-analyzer/crates/hir-expand/src/files | |
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 lint in array length, requires `check_body` | tools/clippy/tests/ui/crashes/mut_mut_macro | |
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: effects | ui/rfcs/rfc-2632-const-trait-impl/effects/project | |
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: error in this case? | test/src/bench | |
FIXME: error message is confusing | ui/match/validate-range-endpoints | |
FIXME: errors during AST validation should abort the compilation before reaching here | rustc_hir_analysis/src/collect | |
FIXME: escape? raw string? | tools/rust-analyzer/crates/cfg/src/cfg_expr tools/rust-analyzer/crates/hir-def/src/attr tools/rust-analyzer/crates/hir-def/src/attr | |
FIXME: evaluate and unify with the const | tools/rust-analyzer/crates/hir-ty/src/infer/expr | |
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_infer/src/infer/error_reporting/note_and_explain | |
FIXME: f16 and f128 have no MSVC representation. We could improve the debuginfo | rustc_codegen_llvm/src/debuginfo/metadata | |
FIXME: fail on unsupported inputs | tools/miri/src/shims/unix/socket | |
FIXME: fetch the limit properly | tools/rust-analyzer/crates/hir-ty/src/infer | |
FIXME: find a better name ? | tools/miri/src/borrow_tracker/tree_borrows/tree | |
FIXME: find a better way to do this. See rust-lang/rust/issues/117271 | rustc_target/src/abi/call/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 | rustc_mir_transform/src/gvn | |
FIXME: find if other pagers accept color options | rustc_driver_impl/src/lib | |
FIXME: fix the intrinsic implementation to work with the new ->u32 signature | rustc_codegen_gcc/example/example | |
FIXME: fn-ptr type, dyn fn type, and trait object type elisions | tools/rust-analyzer/crates/ide/src/inlay_hints | |
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 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/terminator | |
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, 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 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 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 nested fields | rustc_hir_typeck/src/expr rustc_hir_typeck/src/pat | |
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: hygiene is not considered | rustc_resolve/src/late | |
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 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 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 | |
FIXME: implement | tools/rust-analyzer/crates/ide-db/src/search | |
FIXME: implement actual object safety | tools/rust-analyzer/crates/hir-ty/src/chalk_db | |
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 vxWorks, Redox, l4re | std/src/sys/pal/unix/thread | |
FIXME: implement optimization to make ADTs, which do not need drop | rustc_middle/src/ty/util | |
FIXME: implement reading the thread function's return place | tools/miri/src/shims/unix/thread | |
FIXME: implement this | rustc_middle/src/traits/solve | |
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: in the future, codegen backends may need to have more control over this process: they | rustc_codegen_ssa/src/back/link | |
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: inner items | tools/rust-analyzer/crates/hir/src/semantics/source_to_def | |
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 | |
FIXME: intra-links resolve in their nearest module scope, not their actual scope in cases | rustdoc/intra-doc/in-bodies | |
FIXME: investigate making this a `Option<ErrorGuaranteed>` | rustc_ast/src/ast rustc_hir/src/hir | |
FIXME: investigate the performance impact of removing this | rustc_mir_build/src/thir/pattern/mod | |
FIXME: invocations in semicolon-less expressions positions are expanded as expressions | rustc_expand/src/expand | |
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 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 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's not possible to get the value before write_scalar. A read_scalar will cause | tools/miri/src/concurrency/data_race | |
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: 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: 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 `Self::Output` act like `<Self as ~const Index<I>>::Output` | ui/rfcs/rfc-2632-const-trait-impl/effects/minicore | |
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 tools/rust-analyzer/crates/project-model/src/workspace tools/rust-analyzer/crates/project-model/src/workspace | |
FIXME: make this a proper lint | rustc_resolve/src/late/diagnostics | |
FIXME: make this a simple by-ref for loop once external_traits is cleaned up | rustdoc/visit | |
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/transform/check_consts/ops rustc_const_eval/src/transform/check_consts/ops rustc_const_eval/src/transform/check_consts/ops rustc_expand/src/base rustc_expand/src/base rustc_lint/src/levels rustc_metadata/src/errors rustc_metadata/src/errors | |
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 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 we actually want slightly different ranges for the different macro diagnostics | tools/rust-analyzer/crates/hir/src/lib | |
FIXME: maybe we should do this for download-rustc as well? but it would be a pain to update | bootstrap/src/core/download | |
FIXME: maybe we should store the "no response" version in tcx, like | rustc_trait_selection/src/solve/mod | |
FIXME: maybe wrong? | tools/rust-analyzer/crates/hir-ty/src/infer/unify | |
FIXME: mention `ptr::dangling` above, once it is stable | core/src/ptr/mod | |
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/env-null-vars | |
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 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: needs float hack | tools/rust-analyzer/crates/parser/src/grammar/expressions/atom | |
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/rust_analyzer_span tools/rust-analyzer/crates/proc-macro-srv/src/server/token_id | |
FIXME: no tests trigger this. If you find example code that does | rustc_hir_analysis/src/check/compare_impl_item | |
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 descriptions are actually used | rustc_session/src/config | |
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 Result::ok is const fn, use it here | core/src/char/convert | |
FIXME: once const fn is stable, suggest these functions again in constants | tools/clippy/tests/ui/crashes/mut_mut_macro | |
FIXME: once the 10.x release becomes the minimum, this can be dropped for simplification | std/src/sys/pal/unix/rand | |
FIXME: once then_some is const fn, use it here | core/src/char/methods | |
FIXME: once we start storing spans for type arguments, turn this | rustc_hir_analysis/src/check/check | |
FIXME: only remove `libc` when `stdbuild` is active | 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/eval_context | |
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/build/matches/mod | |
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 stablizied | tools/suggest-tests/src/static_suggestions | |
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 | |
FIXME: probe for all types that *could* be arbitrary self-types, not | rustc_hir_typeck/src/method/suggest | |
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/src/collections/binary_heap/tests 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 impl lifetimes so they aren't being reused in assoc item lifetime inlay hints | tools/rust-analyzer/crates/ide/src/inlay_hints | |
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()` 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 | |
FIXME: remove this hack once that issue is fixed | rustc_mir_transform/src/gvn | |
FIXME: remove this line in 1.79 to only keep `--cfg clippy` | tools/clippy/src/driver | |
FIXME: remove this unwrap | rustc_middle/src/mir/graphviz | |
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: rename `AliasTy` to `AliasTerm` and always handle | rustc_middle/src/ty/sty | |
FIXME: replace "try to do a thing, then fall back to another thing" | rustc_mir_build/src/thir/pattern/mod | |
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/f32 core/src/num/f64 | |
FIXME: replace with std::lazy after it gets stabilized and reaches beta | bootstrap/src/core/builder bootstrap/src/utils/cache | |
FIXME: replacement span is corrupted due to a collision in metavar span table | ui/rust-2018/edition-lint-infer-outlives-macro ui/rust-2018/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 db, more importantly this requires name resolution so we would need to | tools/rust-analyzer/crates/proc-macro-srv/src/server/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: 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 const from libc when available? | std/src/sys/pal/unix/stack_overflow | |
FIXME: rewrite this with `child.stdin.write_all()` because | rustc_codegen_gcc/build_system/src/test | |
FIXME: right now there is no concept of "thread exit", but this is likely | std/src/sys/pal/unsupported/thread_local_dtor | |
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'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: 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: share the logic with `write_immediate_no_validate` | rustc_const_eval/src/interpret/place | |
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 `self.interner` once the proc-macro api allows it | tools/rust-analyzer/crates/proc-macro-srv/src/server/rust_analyzer_span tools/rust-analyzer/crates/proc-macro-srv/src/server/rust_analyzer_span | |
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 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 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 | |
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 this | 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 cache `const_data_from_alloc` to avoid repeating this for the | rustc_codegen_ssa/src/mir/operand | |
FIXME: should we do something on wasi? | tools/miri/src/shims/tls | |
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 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: 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 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: spans are broken | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/moved_out_of_ref | |
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: stabilization should modify documentation of `exists()` to recommend this method | std/src/fs | |
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/shims/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 file in addition to stdout here | tools/rust-analyzer/crates/rust-analyzer/src/cli/lsif | |
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: sync submodule exclusion list with rustfmt.toml | tools/tidy/src/walk | |
FIXME: the cc-rs crate only recognizes the literal strings | bootstrap/src/core/builder | |
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 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 | |
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 pass is unsound and causes ICEs in the MIR validator | mir-opt/simplify_try_if_let | |
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 must be a cleaner way to find this information. At least, when | rustc_borrowck/src/region_infer/mod | |
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_llvm/src/intrinsic 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/numbers-arithmetic/issue-105626 | |
FIXME: these could use fewer/better prefixes | tools/rust-analyzer/crates/hir-def/src/find_path | |
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: 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 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/ide-db/src/syntax_helpers/insert_whitespace_into_node | |
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/traits/error_reporting/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 comment below does not seem applicable? | rustc_target/src/spec/targets/armv5te_unknown_linux_musleabi | |
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/traits/error_reporting/type_err_ctxt_ext | |
FIXME: this does not actually handle all reborrows. It only detects cases where `*` is the outermost | rustc_const_eval/src/transform/check_consts/check | |
FIXME: this doesn't account for trivial derefs, but works as a first | rustc_trait_selection/src/traits/error_reporting/type_err_ctxt_ext | |
FIXME: this doesn't quite work for `Iterator::collect` | rustc_trait_selection/src/traits/error_reporting/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 yet | ui/specialization/specialization-supertraits | |
FIXME: this feels, like, super dubious | rustc_hir_typeck/src/method/confirm | |
FIXME: this fixes only rustdoc part of instability of trait impls | rustdoc/html/render/write_shared rustdoc/html/render/write_shared | |
FIXME: this function does a lot of cloning, a 2-pass approach is possibly | tools/miri/src/borrow_tracker/tree_borrows/tree | |
FIXME: this function should not suggest the `foo` function | ui/stability-attribute/issue-109177 | |
FIXME: this implementation, which sidesteps using `Option::map` since it's not const | core/src/option | |
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 hack to avoid false positives in derive macros currently | tools/rust-analyzer/crates/hir-ty/src/diagnostics/decl_check | |
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/ffi_support | |
FIXME: this is a hacky function which should be removed | tools/rust-analyzer/crates/hir-def/src/hir | |
FIXME: this is a vague explanation for why this can't be a `get`, in | rustdoc/html/render/write_shared | |
FIXME: this is bad! rust-lang/rust/issues/115666 | rustc_target/src/abi/call/wasm rustc_target/src/abi/call/wasm | |
FIXME: this is clearly a hack, and should be cleaned up | std/src/sys_common/thread_local_key | |
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/syntax/src/algo | |
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 mutated, but expected to be modified as | rustc_borrowck/src/type_check/liveness/polonius | |
FIXME: this is not totally accurate, but mostly works | rustc_resolve/src/late/diagnostics | |
FIXME: this is not very correct, and only catches the basic cases | tools/rust-analyzer/crates/hir-ty/src/mir/eval | |
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 probably wrong -- check if the `dup`ed descriptor truly uses an | tools/miri/src/shims/unix/linux/epoll | |
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 still incomplete | tools/miri/src/helpers | |
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 is wrong! Need to decide which ABI we really want here | rustc_target/src/abi/call/nvptx64 rustc_target/src/abi/call/nvptx64 | |
FIXME: this is wrong, the new and old FD should refer to the same event object! | tools/miri/src/shims/unix/linux/eventfd | |
FIXME: this isn't quite right with lifetimes on assoc types | rustc_borrowck/src/diagnostics/conflict_errors | |
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 means the store must be fully initialized; | tools/miri/src/concurrency/weak_memory | |
FIXME: this method cannot be called in const-eval yet, as Box isn't | ui/consts/const_forget | |
FIXME: this only lists trait bounds from the item defining the type | tools/rust-analyzer/crates/hir/src/lib | |
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 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_infer/src/errors/mod | |
FIXME: this should *likely* use `offset_from`, but more | rustc_arena/src/lib rustc_arena/src/lib rustc_arena/src/lib core/src/slice/sort | |
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 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/mod | |
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 need to be public | ui/target-feature/tied-features | |
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 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 | |
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 exist | bootstrap/src/utils/helpers | |
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: tool_std is not quite right, we shouldn't allow nightly features | bootstrap/src/core/build_steps/tool | |
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 | Open |
FIXME: unify function_visibility and const_visibility? | tools/rust-analyzer/crates/hir-def/src/db | |
FIXME: unnamed fields in crate metadata is unimplemented yet | rustc_metadata/src/rmeta/decoder | |
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 HIR for this; it doesn't currently expose struct vs. tuple vs. unit variants though | tools/rust-analyzer/crates/ide-assists/src/handlers/add_missing_match_arms | |
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 `expose_provenance` once we figure out whether function pointers have meaningful provenance | rustc_mir_transform/src/shim | |
FIXME: use `obligation.predicate.kind()...trait_ref.self_ty()` to see if we have `()` | rustc_trait_selection/src/traits/error_reporting/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 actual fn pointers | rustc_middle/src/ty/layout | |
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_infer/src/infer/error_reporting/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 query feeding to generate the body right here and then only store the `DefId` of the new body | rustc_mir_transform/src/coroutine/by_move_body | |
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 this for other modes too, for perf? | tools/compiletest/src/runtest | |
FIXME: use unreachable! once that works in const | alloc/src/vec/in_place_collect | |
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/shims/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 ty to see if there's any closure involved, and if there is | rustc_trait_selection/src/traits/error_reporting/suggestions | |
FIXME: wait less | tools/miri/tests/pass-dep/concurrency/libc_pthread_cond_timedwait tools/miri/tests/pass-dep/concurrency/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: we are currently missing some infra here (per-linker-flavor CRT objects) | rustc_codegen_ssa/src/back/link | |
FIXME: we can try to recursively `dtorck_constraint_on_ty` | rustc_trait_selection/src/traits/query/dropck_outlives | |
FIXME: we can't actually do the access since vtable pointers act like zero-sized allocations | tools/miri/tests/pass/align_offset_symbolic | |
FIXME: we can't use a reference here because to convert `try!` to `?` we | tools/rustfmt/src/chains | |
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 could prefer earlier vtable bases perhaps | rustc_trait_selection/src/solve/eval_ctxt/select | |
FIXME: we currently don't return `Delimiter::Invisible` open/close delims. To fix | rustc_parse/src/parser/mod | |
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 just return an error; `num_cpus` then falls back to `sysconf` | tools/miri/src/shims/unix/foreign_items | |
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/traits/error_reporting/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 need to fold the ty too, I think | rustc_infer/src/infer/resolve | |
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/mbe/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 also test `!`, not just `bool` -- but that s currently buggy | tools/miri/tests/pass/underscore_pattern | |
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_infer/src/infer/error_reporting/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/traits/error_reporting/suggestions | |
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 only show the deep one | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/type_mismatch | |
FIXME: we should point at the lifetime | rustc_infer/src/infer/error_reporting/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/traits/error_reporting/suggestions | |
FIXME: we should use the program name if the thread name is not set | tools/miri/src/shims/unix/thread | |
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 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_infer/src/infer/error_reporting/note_and_explain | |
FIXME: we'll need a better message which takes into account | rustc_trait_selection/src/traits/error_reporting/type_err_ctxt_ext | |
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_llvm/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 do statics and raw pointers get excluded here? This makes | rustc_const_eval/src/transform/check_consts/check | |
FIXME: why does `is_const_fn_raw` not classify them as const? | rustc_const_eval/src/const_eval/machine | |
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: 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 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: 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 | |
FIXME~^ ERROR: temporary value dropped while borrowed | ui/consts/promoted_const_call | |
FIXME~| ERROR: temporary value dropped while borrowed | ui/consts/promoted_const_call | |
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 | |
Generate memcpy, etc. FIXME: Remove this once compiler-builtins | bootstrap/src/lib | |
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(#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(Centril): This exists because stable `const fn` can only call stable `const fn`, so | alloc/src/raw_vec | |
HACK(Centril, #64197): These shouldn't really be here | rustc_expand/src/lib | Closed |
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(davidtwco,eddyb): This is a workaround for polymorphization considering | rustc_ty_utils/src/abi | |
HACK(eddyb) Avoid having RustCall on closures | rustc_mir_build/src/build/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) Work around the above issue by adding a dummy inspection | rustc_mir_build/src/build/matches/mod | |
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) erase regions in `args` first, so that `param_env.and(...)` | rustc_middle/src/ty/instance | |
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_infer/src/infer/outlives/components | |
HACK(eddyb) ignore self in the definition (see above) | rustc_hir_typeck/src/fn_ctxt/checks | |
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_infer/src/infer/error_reporting/nice_region_error/placeholder_error | |
HACK(eddyb) pretend the `enum` field (discriminant) | rustc_target/src/abi/call/mod | |
HACK(eddyb) print the path similarly to how `FmtPrinter` prints it | rustc_symbol_mangling/src/legacy rustc_symbol_mangling/src/legacy | |
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 exhaustive instead of generic | rustc_middle/src/ty/print/pretty | |
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 erases lifetimes even though `const_eval_resolve` | rustc_middle/src/ty/consts/kind | |
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) when the query key would contain inference variables | rustc_middle/src/ty/consts/kind | |
HACK(eddyb) work around the fact that verbosely demangled stack traces | ui/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(eddyb): using `c_null` as it works on all types | rustc_codegen_ssa/src/mir/place | |
HACK(estebank): find a better way to figure out that this was a | rustc_resolve/src/late/diagnostics | |
HACK(hkmatsumoto): For impls of primitive types, we index them | rustdoc/json/mod | |
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(jubilee): "indirect branch tracking" works by attaching prologues to functions | rustc_codegen_llvm/src/attributes | |
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): This is inefficient but there is no nontemporal memmove | rustc_codegen_gcc/src/builder | |
HACK(nox): We iter on `b` and then `a` because `max_by_key` | rustc_abi/src/layout | |
HACK(oli-obk): tests/ui/specialization/min_specialization/specialize_on_type_error.rs | rustc_hir_analysis/src/check/wfcheck | |
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: An arbitrary cutoff to avoid dealing with overflow and cycles | rustc_trait_selection/src/solve/inspect/analyse | |
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_trait_selection/src/solve/assembly/mod | |
HACK: For unnamed fields placeholders should have the same visibility as the actual | rustc_expand/src/expand | |
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 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: 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 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: Work around mut borrow | tools/rustfmt/src/comment | |
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: assume stageN-target, we only want stageN | tools/compiletest/src/runtest | |
HACK: constants are used in arrays, even if the types don't match | rustc_symbol_mangling/src/v0 | |
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: 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: 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_ast_lowering/src/lib | |
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: sort the fields, so the diffs on the generated docs/schema are smaller | tools/rust-analyzer/crates/rust-analyzer/src/config | |
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: the const function `from_raw_parts` is used to make this | core/src/slice/mod | |
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: until we support `<Type as ~const Trait>`, assume all of them are | rustc_hir_analysis/src/hir_ty_lowering/mod | |
HACK: warnings is emitted with a general description, not with its members | tools/rust-analyzer/xtask/src/codegen/lints | |
HACK: we are trying to normalize the param-env inside *itself*. The problem is that | rustc_trait_selection/src/traits/mod | |
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 | |
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 FIXME in last branch for why we instantiate the binder eagerly | rustc_trait_selection/src/traits/select/confirmation | |
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_middle/src/ty/relate | |
Self::connect(Ok(addr)) // FIXME: ignoring timeout | std/src/sys/pal/sgx/net | |
T: Foo, //FIXME ~ ERROR missing `~const` qualifier | ui/rfcs/rfc-2632-const-trait-impl/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 | |
The above FIXME would then also get rid of this probably | tools/rust-analyzer/crates/vfs/src/lib | |
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 | |
UGLY HACK: in write_scalar_atomic() we don't know the value before our write | tools/miri/src/concurrency/weak_memory | |
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 | |
_ // 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_infer/src/infer/error_reporting/mod | Open |
```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 | |
assert_eq!(libc::pthread_attr_init(&mut attr), 0); FIXME: this function is not yet implemented | tools/miri/tests/fail-dep/concurrency/libc_pthread_create_main_terminate tools/miri/tests/fail-dep/concurrency/libc_pthread_create_too_few_args tools/miri/tests/fail-dep/concurrency/libc_pthread_create_too_many_args tools/miri/tests/fail-dep/concurrency/libc_pthread_join_detached tools/miri/tests/fail-dep/concurrency/libc_pthread_join_joined tools/miri/tests/fail-dep/concurrency/libc_pthread_join_multiple | |
attrs: vec![], // FIXME -- some automatically generated docs on this method? | tools/rust-analyzer/crates/salsa/salsa-macros/src/query_group | |
bug!("FIXME(RPITIT): error here"); | rustc_hir_analysis/src/check/compare_impl_item | |
check_consts::post_drop_elaboration::check_live_drops(tcx, body); // FIXME: make this a MIR lint | rustc_mir_transform/src/lib | |
cmd: &str, // FIXME make this properly typed | bootstrap/src/core/builder bootstrap/src/core/builder bootstrap/src/core/builder bootstrap/src/core/builder | |
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_trait_selection/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 | |
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 qualified<T: const Trait>() -> Type<{ <T as /* FIXME: const */ Trait>::Assoc::func() }> { | ui/rfcs/rfc-2632-const-trait-impl/assoc-type-const-bound-usage-1 | |
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 |
from the call. FIXME(tmiasko): Since this is a strictly code generation concern | rustc_const_eval/src/transform/validate | |
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/build/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/crates/rust-analyzer/tests/slow-tests/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/rfcs/rfc-2632-const-trait-impl/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 bytes: [u8; 8] = bytes.try_into().unwrap(); // FIXME fail gracefully when this has the wrong size | tools/miri/src/shims/unix/linux/eventfd | |
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 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 = error_lifetime(); // FIXME: handle lifetimes correctly, see rustc | 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 | |
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 | |
one after to suggest the replacement. FIXME(estebank): This is hacky, and there's | rustc_hir_typeck/src/fn_ctxt/checks | |
or FIXME: annotate inserted imports with the same cfg | tools/rust-analyzer/crates/ide-db/src/imports/insert_use | |
outlives::<'a>(call_once(c)); // FIXME(async_closures): Figure out why this fails | ui/async-await/async-closures/no-borrow-from-env ui/async-await/async-closures/without-precise-captures-we-are-powerless | |
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/crates/rust-analyzer/tests/slow-tests/tidy | |
pub missing_tools: bool, // FIXME: Deprecated field. Remove it at 2024 | bootstrap/src/core/config/config | Closed |
pub rust_split_debuginfo_for_build_triple: Option<SplitDebuginfo>, // FIXME: Deprecated field. Remove in Q3'24 | bootstrap/src/core/config/config | |
pub static mut HACK: i32 = 0; | ui/numbers-arithmetic/shift-near-oflo | |
pub trait Owo<X = <Self as /* FIXME: ~const */ Uwu>::T> {} | ui/rfcs/rfc-2632-const-trait-impl/effects/project | |
run(f()) // FIXME: remove this error | tools/rust-analyzer/crates/ide-diagnostics/src/handlers/type_mismatch | |
s.a = 2; // FIXME(async_closures): Figure out why this fails | ui/async-await/async-closures/precise-captures ui/async-await/async-closures/precise-captures | |
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 | |
something unresolvable. FIXME: There should be a way to prevent that | tools/rust-analyzer/crates/ide/src/syntax_highlighting | |
split("__CLIPPY_HACKERY__") | tools/clippy/src/driver | |
the greatest API, FIXME find a better one | tools/rust-analyzer/crates/hir/src/lib | |
the message for the commit that added this FIXME for more information | rustc_mir_dataflow/src/framework/engine | |
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 | |
todo!("FIXME(async_closures): Lower these to SMIR") | rustc_smir/src/rustc_smir/convert/mir | |
trait FromResidual<R = <Self as /* FIXME: ~const */ Try>::Residual> { | ui/rfcs/rfc-2632-const-trait-impl/effects/minicore | |
ty::CoroutineClosure(..) => todo!("FIXME(async_closures): Lower these to SMIR") | rustc_smir/src/rustc_smir/convert/ty | |
type E: _; // FIXME: make the parser propagate the existence of `B` | ui/typeck/typeck_type_placeholder_item | |
unsafe { HACK += 1; } | ui/numbers-arithmetic/shift-near-oflo | |
unwrap() // FIXME | rustc_incremental/src/persist/fs | |
unwrap(); // FIXME: Surely we should find something, but a panic seems wrong here? | tools/miri/src/borrow_tracker/stacked_borrows/diagnostics | |
use S::{}; // FIXME, this and `use S::{self};` should be an error | ui/resolve/resolve-bad-import-prefix | |
use S; //FIXME(unused_imports): ~ ERROR the item `S` is imported redundantly | ui/lint/unused/issue-59896 | |
use Tr::{}; // FIXME, this and `use Tr::{self};` should be an error | ui/resolve/resolve-bad-import-prefix | |
use allow; //FIXME(unused_imports): ~ ERROR the item `allow` is imported redundantly | ui/imports/redundant-import-lang-prelude-attr | |
use bar::Foo; //FIXME(unused_imports): ~ WARNING imported redundantly | ui/lint/use-redundant/use-redundant-glob-parent ui/lint/use-redundant/use-redundant-glob | |
use crate::foo::Bar; //FIXME(unused_imports): ~ WARNING imported redundantly | ui/lint/use-redundant/use-redundant | |
value will be XXX (FIXME) | tools/rust-analyzer/crates/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 |
|| "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 |