Esteban Küber
d992d9cd56
On E0308 involving dyn Trait
, mention trait objects
...
When encountering a type mismatch error involving `dyn Trait`, mention
the existence of boxed trait objects if the other type involved
implements `Trait`.
Partially addresses #102629 .
2024-01-24 16:32:24 +00:00
Oli Scherer
9a20cf1697
Revert "Auto merge of #118133 - Urgau:stabilize_trait_upcasting, r=WaffleLapkin"
...
This reverts commit 6d2b84b3ed
, reversing
changes made to 73bc12199e
.
2024-01-22 14:24:31 +00:00
Kevin Reid
c48cdfe8ee
Remove unnecessary let
s and borrowing from Waker::noop()
usage.
...
`Waker::noop()` now returns a `&'static Waker` reference, so it can be
passed directly to `Context` creation with no temporary lifetime issue.
2024-01-17 12:00:27 -08:00
George-lewis
d56cdd48cb
Bless tests
...
Update tests
2024-01-13 12:46:58 -05:00
Michael Goulet
68bb76634d
Unions are not PointerLike
2024-01-07 19:28:00 +00:00
Jake Goulding
53eca9fa87
Adjust compiler tests for unused_tuple_struct_fields -> dead_code
2024-01-02 15:34:37 -05:00
Jubilee
9648c485de
Rollup merge of #118948 - compiler-errors:noop, r=eholk
...
Use the `Waker::noop` API in tests
Avoids the need to duplicate this code over and over again
r? eholk
2023-12-14 16:07:49 -08:00
Michael Goulet
3c17514ae9
Use the Waker::noop API in tests
2023-12-14 18:34:29 +00:00
lcnr
11d16c4082
update use of feature flags
2023-12-14 15:22:37 +01:00
Nilstrieb
41e8d152dc
Show number in error message even for one error
...
Co-authored-by: Adrian <adrian.iosdev@gmail.com>
2023-11-24 19:15:52 +01:00
Urgau
4c2d6de70e
Stabilize RFC3324 dyn upcasting coercion
...
Aka trait_upcasting feature.
And also adjust the `deref_into_dyn_supertrait` lint.
2023-11-22 13:56:36 +01:00
Michael Goulet
30e6cea0ae
Point out if a local trait has no implementations
2023-09-10 21:20:36 +00:00
lcnr
b1d9cb9a2a
add tests
2023-08-03 15:12:44 +02:00
Erik Desjardins
b6540777fe
cg_llvm: remove pointee types and pointercast/bitcast-of-ptr
2023-07-29 13:18:17 -04:00
Josh Stone
190ded8443
Update the minimum external LLVM to 15
2023-07-27 14:07:08 -07:00
David Tolnay
5bbf0a8306
Revert "Auto merge of #113166 - moulins:ref-niches-initial, r=oli-obk"
...
This reverts commit 557359f925
, reversing
changes made to 1e6c09a803
.
2023-07-21 22:35:57 -07:00
Moulins
feb20f2fe7
Track ABI info. in NaiveLayout
, and use it for PointerLike
checks
...
THis significantly complicates `NaiveLayout` logic, but is necessary to
ensure that bounds like `NonNull<T>: PointerLike` hold in generic
contexts.
Also implement exact layout computation for structs.
2023-07-21 03:31:46 +02:00
Moulins
cb8b1d1bc9
add naive_layout_of
query
2023-07-21 03:31:45 +02:00
nxya
a54a66830d
moved note as unspanned note, moved note to the bottom of the msg
2023-07-18 21:53:34 -04:00
nxya
e6e8892051
added links as a note
2023-07-18 09:27:35 -04:00
nxya
f92a9f6808
add links to query documentation for E0391
2023-07-18 09:27:26 -04:00
nxya
bef91ee687
added links as a note
2023-07-18 09:20:25 -04:00
nxya
c429a72db9
add links to query documentation for E0391
2023-07-18 09:20:25 -04:00
Krasimir Georgiev
668f2d7dbf
tests: adapt for removal of -opaque-pointers in LLVM 17
...
The commit 53717cabf8
removed the flag from LLVM.
2023-07-14 13:11:31 +00:00
Michael Goulet
f55b046931
Normalize opaques during codegen in new solver
2023-07-07 16:02:25 +00:00
Michael Goulet
cd26d10edf
Dont ICE for dyn* Trait: Trait
goals during selection in new trait solver
2023-07-06 03:10:11 +00:00
lcnr
30ed152330
update tests
2023-07-03 09:12:15 +02:00
Michael Goulet
df1c1afdaf
Check that RPITs are compatible with the opaques inferred during HIR typeck too
2023-05-31 17:45:45 +00:00
Michael Goulet
97c11ffb22
Strongly prefer alias and param-env bounds
2023-05-25 03:35:14 +00:00
Michael Goulet
3a2710cdb6
Don't ICE when computing PointerLike trait when region vars are in param-env
2023-05-23 17:23:30 +00:00
Michael Goulet
3009cb3f6b
Don't ICE in layout computation for placeholder types
2023-05-12 00:58:06 +00:00
Michael Goulet
920c51c526
Enforce that PointerLike requires a pointer-like ABI
2023-04-08 21:11:16 +00:00
Michael Goulet
1b5ac39908
dyn* is a valid const
2023-04-04 00:28:05 +00:00
Michael Goulet
bd4355500a
Gate all usages of dyn*, even in macros
2023-03-11 21:29:28 +00:00
Ralf Jung
57056d7f8f
slightly beef up dyn-star-to-dyn test
2023-02-20 15:08:05 +01:00
Michael Goulet
df52e2037a
Use inttoptr to support usize as dyn* value, use pointercast to make sure pointers are compatible
2023-02-18 19:47:33 +00:00
Michael Goulet
2b70cbb8a5
Rename PointerSized to PointerLike
2023-02-07 19:05:53 +00:00
Esteban Küber
62ba3e70a1
Modify primary span label for E0308
...
The previous output was unintuitive to users.
2023-01-30 20:12:19 +00:00
Michael Goulet
70a8d8dcf3
Allow codegen to unsize dyn* to dyn
2023-01-11 19:52:42 +00:00
Albert Larsan
cf2dff2b1e
Move /src/test to /tests
2023-01-11 09:32:08 +00:00