Skip to content

Commit 518d257

Browse files
committed
Merge remote-tracking branch 'ups/master' into feat/warnin-for-no-mangle-together-with-export-name
2 parents a593014 + c8a8c82 commit 518d257

File tree

1,965 files changed

+38645
-23139
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,965 files changed

+38645
-23139
lines changed

Cargo.lock

+36-48
Original file line numberDiff line numberDiff line change
@@ -377,7 +377,7 @@ dependencies = [
377377
"cargo_metadata",
378378
"directories",
379379
"rustc-build-sysroot",
380-
"rustc_tools_util 0.4.0",
380+
"rustc_tools_util",
381381
"rustc_version",
382382
"serde",
383383
"serde_json",
@@ -537,7 +537,7 @@ checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97"
537537

538538
[[package]]
539539
name = "clippy"
540-
version = "0.1.83"
540+
version = "0.1.84"
541541
dependencies = [
542542
"anstream",
543543
"cargo_metadata",
@@ -550,9 +550,11 @@ dependencies = [
550550
"if_chain",
551551
"itertools",
552552
"parking_lot",
553+
"pulldown-cmark 0.11.3",
553554
"quote",
554555
"regex",
555-
"rustc_tools_util 0.3.0",
556+
"rinja",
557+
"rustc_tools_util",
556558
"serde",
557559
"serde_json",
558560
"syn 2.0.79",
@@ -566,7 +568,7 @@ dependencies = [
566568

567569
[[package]]
568570
name = "clippy_config"
569-
version = "0.1.83"
571+
version = "0.1.84"
570572
dependencies = [
571573
"itertools",
572574
"serde",
@@ -582,20 +584,19 @@ dependencies = [
582584
"clap",
583585
"indoc",
584586
"itertools",
585-
"opener 0.6.1",
587+
"opener",
586588
"shell-escape",
587589
"walkdir",
588590
]
589591

590592
[[package]]
591593
name = "clippy_lints"
592-
version = "0.1.83"
594+
version = "0.1.84"
593595
dependencies = [
594596
"arrayvec",
595597
"cargo_metadata",
596598
"clippy_config",
597599
"clippy_utils",
598-
"declare_clippy_lint",
599600
"itertools",
600601
"quine-mc_cluskey",
601602
"regex",
@@ -613,7 +614,7 @@ dependencies = [
613614

614615
[[package]]
615616
name = "clippy_utils"
616-
version = "0.1.83"
617+
version = "0.1.84"
617618
dependencies = [
618619
"arrayvec",
619620
"clippy_config",
@@ -919,15 +920,6 @@ dependencies = [
919920
"winapi",
920921
]
921922

922-
[[package]]
923-
name = "declare_clippy_lint"
924-
version = "0.1.83"
925-
dependencies = [
926-
"itertools",
927-
"quote",
928-
"syn 2.0.79",
929-
]
930-
931923
[[package]]
932924
name = "deranged"
933925
version = "0.3.11"
@@ -1915,7 +1907,7 @@ dependencies = [
19151907
"anyhow",
19161908
"clap",
19171909
"fs-err",
1918-
"rustc-hash 1.1.0",
1910+
"rustc-hash 2.0.0",
19191911
"rustdoc-json-types",
19201912
"serde",
19211913
"serde_json",
@@ -2163,7 +2155,7 @@ dependencies = [
21632155
"log",
21642156
"memchr",
21652157
"once_cell",
2166-
"opener 0.7.2",
2158+
"opener",
21672159
"pulldown-cmark 0.10.3",
21682160
"regex",
21692161
"serde",
@@ -2501,17 +2493,6 @@ dependencies = [
25012493
"stable_deref_trait",
25022494
]
25032495

2504-
[[package]]
2505-
name = "opener"
2506-
version = "0.6.1"
2507-
source = "registry+https://github.com/rust-lang/crates.io-index"
2508-
checksum = "6c62dcb6174f9cb326eac248f07e955d5d559c272730b6c03e396b443b562788"
2509-
dependencies = [
2510-
"bstr",
2511-
"normpath",
2512-
"winapi",
2513-
]
2514-
25152496
[[package]]
25162497
name = "opener"
25172498
version = "0.7.2"
@@ -2879,6 +2860,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
28792860
checksum = "679341d22c78c6c649893cbd6c3278dcbe9fc4faa62fea3a9296ae2b50c14625"
28802861
dependencies = [
28812862
"bitflags 2.6.0",
2863+
"getopts",
28822864
"memchr",
28832865
"pulldown-cmark-escape 0.11.0",
28842866
"unicase",
@@ -3533,7 +3515,7 @@ dependencies = [
35333515
"memmap2",
35343516
"parking_lot",
35353517
"portable-atomic",
3536-
"rustc-hash 1.1.0",
3518+
"rustc-hash 2.0.0",
35373519
"rustc-rayon",
35383520
"rustc-stable-hash",
35393521
"rustc_arena",
@@ -3640,6 +3622,7 @@ version = "0.0.0"
36403622
dependencies = [
36413623
"annotate-snippets 0.11.4",
36423624
"derive_setters",
3625+
"rustc_abi",
36433626
"rustc_ast",
36443627
"rustc_ast_pretty",
36453628
"rustc_data_structures",
@@ -3737,6 +3720,7 @@ name = "rustc_hir_analysis"
37373720
version = "0.0.0"
37383721
dependencies = [
37393722
"itertools",
3723+
"rustc_abi",
37403724
"rustc_arena",
37413725
"rustc_ast",
37423726
"rustc_attr",
@@ -3925,6 +3909,7 @@ dependencies = [
39253909
name = "rustc_lint"
39263910
version = "0.0.0"
39273911
dependencies = [
3912+
"rustc_abi",
39283913
"rustc_ast",
39293914
"rustc_ast_pretty",
39303915
"rustc_attr",
@@ -3999,6 +3984,7 @@ dependencies = [
39993984
"bitflags 2.6.0",
40003985
"libloading",
40013986
"odht",
3987+
"rustc_abi",
40023988
"rustc_ast",
40033989
"rustc_attr",
40043990
"rustc_data_structures",
@@ -4048,6 +4034,7 @@ dependencies = [
40484034
"rustc_hir",
40494035
"rustc_hir_pretty",
40504036
"rustc_index",
4037+
"rustc_lint_defs",
40514038
"rustc_macros",
40524039
"rustc_query_system",
40534040
"rustc_serialize",
@@ -4092,6 +4079,7 @@ version = "0.0.0"
40924079
dependencies = [
40934080
"polonius-engine",
40944081
"regex",
4082+
"rustc_abi",
40954083
"rustc_ast",
40964084
"rustc_data_structures",
40974085
"rustc_errors",
@@ -4113,6 +4101,7 @@ version = "0.0.0"
41134101
dependencies = [
41144102
"either",
41154103
"itertools",
4104+
"rustc_abi",
41164105
"rustc_arena",
41174106
"rustc_ast",
41184107
"rustc_attr",
@@ -4205,6 +4194,7 @@ dependencies = [
42054194
name = "rustc_passes"
42064195
version = "0.0.0"
42074196
dependencies = [
4197+
"rustc_abi",
42084198
"rustc_ast",
42094199
"rustc_ast_pretty",
42104200
"rustc_attr",
@@ -4230,7 +4220,8 @@ dependencies = [
42304220
name = "rustc_pattern_analysis"
42314221
version = "0.0.0"
42324222
dependencies = [
4233-
"rustc-hash 1.1.0",
4223+
"rustc-hash 2.0.0",
4224+
"rustc_abi",
42344225
"rustc_apfloat",
42354226
"rustc_arena",
42364227
"rustc_data_structures",
@@ -4370,6 +4361,7 @@ dependencies = [
43704361
"bitflags 2.6.0",
43714362
"getopts",
43724363
"libc",
4364+
"rustc_abi",
43734365
"rustc_ast",
43744366
"rustc_data_structures",
43754367
"rustc_errors",
@@ -4433,6 +4425,7 @@ version = "0.0.0"
44334425
dependencies = [
44344426
"punycode",
44354427
"rustc-demangle",
4428+
"rustc_abi",
44364429
"rustc_data_structures",
44374430
"rustc_errors",
44384431
"rustc_hir",
@@ -4461,12 +4454,6 @@ dependencies = [
44614454
"tracing",
44624455
]
44634456

4464-
[[package]]
4465-
name = "rustc_tools_util"
4466-
version = "0.3.0"
4467-
source = "registry+https://github.com/rust-lang/crates.io-index"
4468-
checksum = "8ba09476327c4b70ccefb6180f046ef588c26a24cf5d269a9feba316eb4f029f"
4469-
44704457
[[package]]
44714458
name = "rustc_tools_util"
44724459
version = "0.4.0"
@@ -4520,14 +4507,14 @@ name = "rustc_transmute"
45204507
version = "0.0.0"
45214508
dependencies = [
45224509
"itertools",
4510+
"rustc_abi",
45234511
"rustc_ast_ir",
45244512
"rustc_data_structures",
45254513
"rustc_hir",
45264514
"rustc_infer",
45274515
"rustc_macros",
45284516
"rustc_middle",
45294517
"rustc_span",
4530-
"rustc_target",
45314518
"tracing",
45324519
]
45334520

@@ -4609,6 +4596,7 @@ dependencies = [
46094596
"rustdoc-json-types",
46104597
"serde",
46114598
"serde_json",
4599+
"sha2",
46124600
"smallvec",
46134601
"tempfile",
46144602
"threadpool",
@@ -4633,7 +4621,7 @@ name = "rustdoc-json-types"
46334621
version = "0.1.0"
46344622
dependencies = [
46354623
"bincode",
4636-
"rustc-hash 1.1.0",
4624+
"rustc-hash 2.0.0",
46374625
"serde",
46384626
"serde_json",
46394627
]
@@ -5263,7 +5251,7 @@ dependencies = [
52635251
"ignore",
52645252
"miropt-test-tools",
52655253
"regex",
5266-
"rustc-hash 1.1.0",
5254+
"rustc-hash 2.0.0",
52675255
"semver",
52685256
"similar",
52695257
"termcolor",
@@ -5594,13 +5582,6 @@ dependencies = [
55945582
"version_check",
55955583
]
55965584

5597-
[[package]]
5598-
name = "unicode-bdd"
5599-
version = "0.1.0"
5600-
dependencies = [
5601-
"ucd-parse",
5602-
]
5603-
56045585
[[package]]
56055586
name = "unicode-bidi"
56065587
version = "0.3.15"
@@ -5650,6 +5631,13 @@ version = "1.12.0"
56505631
source = "registry+https://github.com/rust-lang/crates.io-index"
56515632
checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493"
56525633

5634+
[[package]]
5635+
name = "unicode-table-generator"
5636+
version = "0.1.0"
5637+
dependencies = [
5638+
"ucd-parse",
5639+
]
5640+
56535641
[[package]]
56545642
name = "unicode-width"
56555643
version = "0.1.14"

RELEASES.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -68,15 +68,15 @@ Stabilized APIs
6868
- [`impl Default for std::collections::vec_deque::Iter`](https://doc.rust-lang.org/nightly/std/collections/vec_deque/struct.Iter.html#impl-Default-for-Iter%3C'_,+T%3E)
6969
- [`impl Default for std::collections::vec_deque::IterMut`](https://doc.rust-lang.org/nightly/std/collections/vec_deque/struct.IterMut.html#impl-Default-for-IterMut%3C'_,+T%3E)
7070
- [`Rc<T>::new_uninit`](https://doc.rust-lang.org/nightly/std/rc/struct.Rc.html#method.new_uninit)
71-
- [`Rc<T>::assume_init`](https://doc.rust-lang.org/nightly/std/rc/struct.Rc.html#method.assume_init)
71+
- [`Rc<MaybeUninit<T>>::assume_init`](https://doc.rust-lang.org/nightly/std/rc/struct.Rc.html#method.assume_init)
7272
- [`Rc<[T]>::new_uninit_slice`](https://doc.rust-lang.org/nightly/std/rc/struct.Rc.html#method.new_uninit_slice)
7373
- [`Rc<[MaybeUninit<T>]>::assume_init`](https://doc.rust-lang.org/nightly/std/rc/struct.Rc.html#method.assume_init-1)
7474
- [`Arc<T>::new_uninit`](https://doc.rust-lang.org/nightly/std/sync/struct.Arc.html#method.new_uninit)
75-
- [`Arc<T>::assume_init`](https://doc.rust-lang.org/nightly/std/sync/struct.Arc.html#method.assume_init)
75+
- [`Arc<MaybeUninit<T>>::assume_init`](https://doc.rust-lang.org/nightly/std/sync/struct.Arc.html#method.assume_init)
7676
- [`Arc<[T]>::new_uninit_slice`](https://doc.rust-lang.org/nightly/std/sync/struct.Arc.html#method.new_uninit_slice)
7777
- [`Arc<[MaybeUninit<T>]>::assume_init`](https://doc.rust-lang.org/nightly/std/sync/struct.Arc.html#method.assume_init-1)
7878
- [`Box<T>::new_uninit`](https://doc.rust-lang.org/nightly/std/boxed/struct.Box.html#method.new_uninit)
79-
- [`Box<T>::assume_init`](https://doc.rust-lang.org/nightly/std/boxed/struct.Box.html#method.assume_init)
79+
- [`Box<MaybeUninit<T>>::assume_init`](https://doc.rust-lang.org/nightly/std/boxed/struct.Box.html#method.assume_init)
8080
- [`Box<[T]>::new_uninit_slice`](https://doc.rust-lang.org/nightly/std/boxed/struct.Box.html#method.new_uninit_slice)
8181
- [`Box<[MaybeUninit<T>]>::assume_init`](https://doc.rust-lang.org/nightly/std/boxed/struct.Box.html#method.assume_init-1)
8282
- [`core::arch::x86_64::_bextri_u64`](https://doc.rust-lang.org/stable/core/arch/x86_64/fn._bextri_u64.html)

compiler/rustc_abi/src/callconv.rs

+9-11
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,23 @@ mod abi {
33
pub(crate) use crate::Variants;
44
}
55

6+
#[cfg(feature = "nightly")]
67
use rustc_macros::HashStable_Generic;
78

8-
use crate::{Abi, Align, FieldsShape, HasDataLayout, Size, TyAbiInterface, TyAndLayout};
9+
#[cfg(feature = "nightly")]
10+
use crate::{Abi, FieldsShape, TyAbiInterface, TyAndLayout};
11+
use crate::{Align, HasDataLayout, Size};
912

10-
#[derive(Copy, Clone, PartialEq, Eq, Hash, Debug, HashStable_Generic)]
13+
#[cfg_attr(feature = "nightly", derive(HashStable_Generic))]
14+
#[derive(Copy, Clone, PartialEq, Eq, Hash, Debug)]
1115
pub enum RegKind {
1216
Integer,
1317
Float,
1418
Vector,
1519
}
1620

17-
#[derive(Copy, Clone, PartialEq, Eq, Hash, Debug, HashStable_Generic)]
21+
#[cfg_attr(feature = "nightly", derive(HashStable_Generic))]
22+
#[derive(Copy, Clone, PartialEq, Eq, Hash, Debug)]
1823
pub struct Reg {
1924
pub kind: RegKind,
2025
pub size: Size,
@@ -108,15 +113,8 @@ impl HomogeneousAggregate {
108113
}
109114
}
110115

116+
#[cfg(feature = "nightly")]
111117
impl<'a, Ty> TyAndLayout<'a, Ty> {
112-
/// Returns `true` if this is an aggregate type (including a ScalarPair!)
113-
pub fn is_aggregate(&self) -> bool {
114-
match self.abi {
115-
Abi::Uninhabited | Abi::Scalar(_) | Abi::Vector { .. } => false,
116-
Abi::ScalarPair(..) | Abi::Aggregate { .. } => true,
117-
}
118-
}
119-
120118
/// Returns `Homogeneous` if this layout is an aggregate containing fields of
121119
/// only a single type (e.g., `(u32, u32)`). Such aggregates are often
122120
/// special-cased in ABIs.

0 commit comments

Comments
 (0)