rust/compiler
Stuart Cook e011dd47ee
Rollup merge of #144885 - zachs18:ptr_guaranteed_cmp_more, r=RalfJung
Implement some more checks in `ptr_guaranteed_cmp`.

* Pointers with different residues modulo their allocations' least common alignment are never equal.
* Pointers to the same static allocation are equal if and only if they have the same offset.
* Pointers to different non-zero-sized static allocations are unequal if both point within their allocation, and not on opposite ends.

Tracking issue for `const_raw_ptr_comparison`: <https://github.com/rust-lang/rust/issues/53020>

This should not affect `is_null`, the only usage of this intrinsic on stable.

Closes https://github.com/rust-lang/rust/issues/144584
2025-08-26 14:19:16 +10:00
..
rustc rename stable_mir to rustc_public, and rustc_smir to rustc_public_bridge 2025-07-14 09:25:54 +00:00
rustc_abi Move IntoDiagArg earlier in the dependency chains 2025-08-20 15:01:13 -07:00
rustc_arena Introduce Arena::try_alloc_from_iter. 2025-04-19 01:13:18 +00:00
rustc_ast print raw lifetime idents with r# 2025-08-22 12:58:37 +08:00
rustc_ast_ir Tidy up Cargo.toml files. 2025-07-31 19:58:04 +10:00
rustc_ast_lowering Add an experimental unsafe(force_target_feature) attribute. 2025-08-22 01:26:26 +02:00
rustc_ast_passes Rollup merge of #145747 - joshtriplett:builtin-diag-dyn, r=jdonszelmann 2025-08-22 22:00:59 -04:00
rustc_ast_pretty print raw lifetime idents with r# 2025-08-22 12:58:37 +08:00
rustc_attr_parsing Warn on macro calls for attributes that had this behaviour previously 2025-08-24 14:29:03 +02:00
rustc_baked_icu_data Add unreachable_pub to RUSTC_LINT_FLAGS for compiler/ crates. 2025-03-11 13:14:21 +11:00
rustc_borrowck Auto merge of #145711 - lcnr:non-defining-uses-hir-typeck, r=BoxyUwU 2025-08-25 22:56:37 +00:00
rustc_builtin_macros Rollup merge of #145747 - joshtriplett:builtin-diag-dyn, r=jdonszelmann 2025-08-22 22:00:59 -04:00
rustc_codegen_cranelift Port the #[linkage] attribute to the new attribute system 2025-08-13 21:01:37 +02:00
rustc_codegen_gcc Complete functionality and general cleanup 2025-08-14 16:30:15 +00:00
rustc_codegen_llvm Rename llvm::Bool aliases to standard const case 2025-08-24 23:09:54 +10:00
rustc_codegen_ssa Rollup merge of #145820 - mati865:raw-elf-verdefnum, r=bjorn3 2025-08-25 19:52:22 +10:00
rustc_const_eval Rollup merge of #144885 - zachs18:ptr_guaranteed_cmp_more, r=RalfJung 2025-08-26 14:19:16 +10:00
rustc_data_structures Uplift rustc_mir_transform::coverage::counters::union_find to rustc_data_structures. 2025-08-22 02:22:51 +00:00
rustc_driver Remove recursion_limit increases. 2025-04-02 16:25:27 +11:00
rustc_driver_impl Tidy up Cargo.toml files. 2025-07-31 19:58:04 +10:00
rustc_error_codes Rollup merge of #144944 - He1pa:E0793, r=compiler-errors 2025-08-15 16:16:32 +10:00
rustc_error_messages Move IntoDiagArg earlier in the dependency chains 2025-08-20 15:01:13 -07:00
rustc_errors Support lints in early attribute parsing 2025-08-24 09:14:49 +02:00
rustc_expand Warn on macro calls for attributes that had this behaviour previously 2025-08-24 14:29:03 +02:00
rustc_feature Rollup merge of #145726 - aapoalas:reborrow-lang-experiment, r=petrochenkov 2025-08-22 22:00:55 -04:00
rustc_fluent_macro Remove all unused feature gates from the compiler 2025-06-08 14:50:42 +00:00
rustc_fs_util Retry if creating temp fails with access denied 2025-04-25 11:28:36 +00:00
rustc_graphviz Remove #![warn(unreachable_pub)] from all compiler/ crates. 2025-03-11 13:14:21 +11:00
rustc_hashes Revert "Use workspace lints for crates in compiler/ #138084" 2025-03-10 18:12:47 +08:00
rustc_hir Port crate name to the new attribute system 2025-08-24 09:20:57 +02:00
rustc_hir_analysis change non-defining use error message 2025-08-25 14:20:18 +02:00
rustc_hir_id rustc_hir_id: Add a comment explaining why the crate exists 2025-08-20 15:04:00 -07:00
rustc_hir_pretty Propagate TraitImplHeader to hir 2025-08-11 17:05:42 -05:00
rustc_hir_typeck change non-defining use error message 2025-08-25 14:20:18 +02:00
rustc_incremental Auto merge of #139758 - Zoxc:thread-local-graph, r=oli-obk 2025-05-07 12:39:54 +00:00
rustc_index Update documentation. 2025-08-24 22:15:19 +00:00
rustc_index_macros Tidy up Cargo.toml files. 2025-07-31 19:58:04 +10:00
rustc_infer change HIR typeck unification handling approach 2025-08-22 13:39:38 +02:00
rustc_interface Port crate name to the new attribute system 2025-08-24 09:20:57 +02:00
rustc_lexer fix(lexer): Allow '-' in the infostring continue set 2025-08-22 09:26:19 -05:00
rustc_lint Port crate name to the new attribute system 2025-08-24 09:20:57 +02:00
rustc_lint_defs Migrate BuiltinLintDiag::HiddenUnicodeCodepoints to use LintDiagnostic directly 2025-08-22 03:01:35 -07:00
rustc_llvm Tell LLVM about read-only captures 2025-08-20 19:08:16 +02:00
rustc_log Add documentation for init_logger_with_additional_layer 2025-06-12 12:11:15 +02:00
rustc_macros remove should_render in PrintAttribute derive 2025-08-16 21:41:39 +08:00
rustc_metadata Auto merge of #145600 - jieyouxu:rollup-jw0bpnt, r=jieyouxu 2025-08-19 19:26:10 +00:00
rustc_middle Auto merge of #145711 - lcnr:non-defining-uses-hir-typeck, r=BoxyUwU 2025-08-25 22:56:37 +00:00
rustc_mir_build Rollup merge of #145573 - veluca93:unsafe-force-target-feature, r=davidtwco 2025-08-22 22:00:51 -04:00
rustc_mir_dataflow Rollup merge of #145695 - cjgillot:place-elem-map, r=oli-obk,lcnr 2025-08-22 22:00:54 -04:00
rustc_mir_transform Fix ICE when validating transmuting ZST to inhabited enum 2025-08-23 19:25:58 +02:00
rustc_monomorphize Rollup merge of #144865 - WaffleLapkin:track-tail, r=lqd 2025-08-15 16:16:31 +10:00
rustc_next_trait_solver support non-defining uses in HIR typeck 2025-08-25 14:20:18 +02:00
rustc_parse Remove the lifetime from ExpTokenPair/SeqSep. 2025-08-25 08:02:52 +10:00
rustc_parse_format update to literal-escaper-0.0.5 2025-07-08 10:16:44 +00:00
rustc_passes Port crate name to the new attribute system 2025-08-24 09:20:57 +02:00
rustc_pattern_analysis Rollup merge of #145234 - dianne:1-tuple-witnesses, r=jackh726 2025-08-23 22:22:15 +02:00
rustc_privacy Propagate TraitImplHeader to hir 2025-08-11 17:05:42 -05:00
rustc_proc_macro Tidy up Cargo.toml files. 2025-07-31 19:58:04 +10:00
rustc_public fix missing parenthesis in pretty discriminant 2025-08-09 01:35:50 +08:00
rustc_public_bridge Remove useless lifetime parameter. 2025-07-23 23:54:37 +00:00
rustc_query_impl Remove unused allow attrs 2025-07-07 12:58:16 +00:00
rustc_query_system remove rustc_attr_data_structures 2025-07-31 14:19:27 +02:00
rustc_resolve Rollup merge of #145747 - joshtriplett:builtin-diag-dyn, r=jdonszelmann 2025-08-22 22:00:59 -04:00
rustc_sanitizers rename TraitRef::from_method to from_assoc 2025-08-09 14:22:01 +08:00
rustc_serialize use div_ceil instead of manual logic 2025-07-05 10:55:42 +02:00
rustc_session Support lints in early attribute parsing 2025-08-24 09:14:49 +02:00
rustc_span Rollup merge of #145726 - aapoalas:reborrow-lang-experiment, r=petrochenkov 2025-08-22 22:00:55 -04:00
rustc_symbol_mangling Rollup merge of #145429 - bjorn3:codegen_fn_attrs_improvements, r=jdonszelmann 2025-08-19 19:45:31 +08:00
rustc_target Add aarch64_be-unknown-hermit target 2025-08-22 20:25:11 +02:00
rustc_thread_pool Drop rust-version from rustc_thread_pool 2025-08-04 15:03:49 -07:00
rustc_trait_selection change non-defining use error message 2025-08-25 14:20:18 +02:00
rustc_traits Eliminate unnecessary dependency from rustc_traits to rustc_hir 2025-08-20 15:04:00 -07:00
rustc_transmute Tidy up Cargo.toml files. 2025-07-31 19:58:04 +10:00
rustc_ty_utils Tell LLVM about read-only captures 2025-08-20 19:08:16 +02:00
rustc_type_ir change HIR typeck unification handling approach 2025-08-22 13:39:38 +02:00
rustc_type_ir_macros Split TypeFolder and FallibleTypeFolder 2025-04-15 18:30:35 +00:00