Bao Zhiyuan
5c88e98419
different error code based on variant
2024-04-23 20:54:03 +08:00
Lukas Wirth
3b9a2af21f
Peek for panic message in test output
2024-04-21 08:50:25 +02:00
Lukas Wirth
6de838c255
Implement BeginPanic for mir eval
2024-04-19 12:42:32 +02:00
Lukas Wirth
a9140e197c
Fix #[rustc_const_panic_str] functions not actually being hooked
2024-04-18 15:49:08 +02:00
Nilstrieb
805f569adc
Handle panicking like rustc CTFE does
...
Instead of using `core::fmt::format` to format panic messages, which may in turn
panic too and cause recursive panics and other messy things, redirect
`panic_fmt` to `const_panic_fmt` like CTFE, which in turn goes to
`panic_display` and does the things normally. See the tests for the full
call stack.
2024-04-18 12:20:54 +02:00
David Barsky
5ba37f3f8e
chore: fix a few spans without .entered()
2024-04-17 12:44:49 -04:00
Lukas Wirth
531a270d91
Generally optimize diagnostics performance
2024-04-15 22:15:41 +02:00
Lukas Wirth
94e38261b3
Optimize exhaustiveness checking perf a bit
2024-04-15 19:35:48 +02:00
Lukas Wirth
91659da5a6
internal: Use hir_fmt_args
everywhere in hir_ty::display
2024-04-15 16:17:29 +02:00
Lukas Wirth
1915980031
fix: Fix impl Trait<Self>
causing stackoverflows
2024-04-15 15:41:20 +02:00
Laurențiu Nicola
f5e4eb2ef9
Fix rustc_skip_array_during_method_dispatch edition check
2024-04-15 08:54:07 +03:00
Lukas Wirth
83370fe5d7
Use Edition::CURRENT
2024-04-14 15:30:29 +02:00
Lukas Wirth
8078c3d9e8
Bump chalk
2024-04-08 11:03:19 +02:00
Lukas Wirth
a82e028e30
Cleanup util::Generics method names
2024-04-06 14:29:40 +02:00
Lukas Wirth
336dee3415
Remove some allocs
2024-04-06 13:40:15 +02:00
Lukas Wirth
13890697eb
Simplify
2024-04-06 13:12:07 +02:00
Lukas Wirth
86967032f7
Consider ADT generic parameter defaults for unsubstituted layout calculations
2024-04-03 09:01:27 +02:00
bors
c3b8c2a254
Auto merge of #16996 - Veykril:lt-err, r=Veykril
...
internal: Lower outlive goals, respect them in display impls
2024-04-02 14:13:22 +00:00
Lukas Wirth
707be6b99c
Adjust display impls to respect lifetime bounds
2024-04-02 14:51:08 +02:00
Lukas Wirth
0927f86247
Replace static_lifetime usages with error_lifetime, lower outlives goals
2024-04-02 14:51:06 +02:00
bors
23dd54b010
Auto merge of #16968 - roife:fix-issue-16801, r=Veykril
...
fix: silence mismatches involving unresolved projections
fix #16801
2024-04-01 20:05:33 +00:00
roife
2636e44378
fix: simplify the usage of UnknownMismatch
2024-04-02 03:26:32 +08:00
roife
3d373fec8c
tests: add tests for mismatches with unresolved projections
2024-04-02 01:32:43 +08:00
roife
8d6b65c544
fix: silence mismatches involving unresolved projections
2024-04-02 01:27:22 +08:00
bors
3691380c35
Auto merge of #16920 - Veykril:clippy-lints, r=Veykril
...
internal: Fix new nightly clippy lints
2024-04-01 16:00:18 +00:00
Lukas Wirth
2ae3e57c26
Fix new clippy lints
2024-04-01 17:55:56 +02:00
Nadrieril
7e8f2d8fd3
Use contiguous indices for enum variants
2024-04-01 12:27:16 +02:00
dfireBird
69c4ac6304
implement len and is_empty method in generic_params
2024-03-29 18:26:46 +05:30
dfireBird
20b12c2bac
fix lifetime length are not added in count of params in highlight
2024-03-27 23:21:17 +05:30
Laurențiu Nicola
85947bba49
Update comment on provenance_split
2024-03-26 10:58:35 +02:00
bors
0583aaa555
Auto merge of #16805 - dfireBird:lifetime_lowering, r=Veykril
...
feat: Implement resolving and lowering of Lifetimes (no inference yet)
2024-03-26 07:58:43 +00:00
dfireBird
0e54e2b55a
use references in Generics iter methods
2024-03-26 13:04:54 +05:30
Nadrieril
1716cc8433
Revert to the crates.io version of rustc_pattern_analysis
2024-03-25 13:09:37 +01:00
bors
6f6b03f9de
Auto merge of #16935 - Nilstrieb:dont-panic, r=HKalbasi
...
Handle panicking like rustc CTFE does
Instead of using `core::fmt::format` to format panic messages, which may in turn panic too and cause recursive panics and other messy things, redirect `panic_fmt` to `const_panic_fmt` like CTFE, which in turn goes to `panic_display` and does the things normally. See the tests for the full call stack.
The tests don't work yet, I probably missed something in minicore.
fixes #16907 in my local testing, I also need to add a test for it
2024-03-24 18:17:36 +00:00
Nilstrieb
2dfe7de8b6
Handle panicking like rustc CTFE does
...
Instead of using `core::fmt::format` to format panic messages, which may in turn
panic too and cause recursive panics and other messy things, redirect
`panic_fmt` to `const_panic_fmt` like CTFE, which in turn goes to
`panic_display` and does the things normally. See the tests for the full
call stack.
2024-03-24 15:40:26 +01:00
6d7a
142ef764ee
fix: Check stack depth to prevent stack overflows in create_memory_map
2024-03-24 10:19:25 +01:00
6d7a
7c1be82cd9
fix: Prevent stack overflow in recursive const types
...
In the evaluation of const values of recursive types
certain declarations could cause an endless call-loop
within the interpreter (hir-ty’s create_memory_map),
which would lead to a stack overflow.
This commit adds a check that prevents values that contain
an address in their value (such as TyKind::Ref) from being
allocated at the address they contain.
The commit also adds a test for this edge case.
2024-03-21 22:57:21 +01:00
Lukas Wirth
255a8aef92
Move Edition into span crate
2024-03-21 10:21:44 +01:00
dfireBird
b357bcab2b
modify insert_type_vars
for lifetimes
2024-03-19 10:14:45 +05:30
Nadrieril
040f37a99d
Avoid hanging on complex matches
2024-03-18 21:21:52 +01:00
Nadrieril
e67adf40c9
Don't assume place validity when we don't know
2024-03-18 21:21:52 +01:00
Nadrieril
3cfcd4ed96
Abstract over the uses of compute_match_usefulness
2024-03-18 21:21:52 +01:00
dfireBird
13301e7a1a
replace static_lifetime with new_lifetime_var where necessary
...
implemented suggested fixes and changes and fix merge conflicts
2024-03-18 17:53:09 +05:30
dfireBird
a555e95c9a
fix make HirDisplay format lifetimes first
2024-03-18 17:18:08 +05:30
dfireBird
8d08b337fa
include lifetime in the filter for data layout in analysis-stats
...
clippy fixes
2024-03-18 17:18:08 +05:30
dfireBird
490391f576
fix HirDisplay inserting anonymous lifetimes and update tests
2024-03-18 17:18:08 +05:30
dfireBird
0669ae7faf
handle lifetimes separately in substs function
2024-03-18 17:18:08 +05:30
dfireBird
a6c8cbfd91
update Generics
iter methods to return GenericParamId
2024-03-18 17:18:08 +05:30
dfireBird
d6e3929841
include lifetime in ParamKind and in Generics::provenance_split
2024-03-18 17:18:08 +05:30
dfireBird
e463a3e1cf
update make_binders
to include lifetimes in generics
...
adds a bunch of iter methods that include lifetimes
2024-03-18 17:18:08 +05:30