diff options
| author | ThePuzzlemaker <tpzker@thepuzzlemaker.info> | 2021-09-06 16:11:28 -0500 |
|---|---|---|
| committer | ThePuzzlemaker <tpzker@thepuzzlemaker.info> | 2021-09-06 16:30:44 -0500 |
| commit | 734209ed73507e214e49ef5cb7988af8901e74c7 (patch) | |
| tree | c5d18c15ab264f37b15b6b09db90ed0129e7a930 /library/std/src | |
| parent | 8ceea01bb442b9746a51b062ce25abbf46d866b2 (diff) | |
| download | rust-734209ed73507e214e49ef5cb7988af8901e74c7.tar.gz rust-734209ed73507e214e49ef5cb7988af8901e74c7.zip | |
Normalize assoc types when checking ret ty of main
This fixes #88609. Previously, the return type of `fn main()` would not have any associated type projections within normalized before checking if it implements the standard library trait `std::process::Termination`. This commit appears to fix it. This feels vaguely symptomatic of a problem in the underlying trait solving engine, but I am not sure how I would solve that. I am unsure why the example in #88609 with `assert_impl_termination` and `fn foo()` work, but simply `fn main()` doesn't. The way that I solved this is also probably not the best way to do this, so please let me know if there is a better way to do this. I have added a build-pass regression test for this issue.
Diffstat (limited to 'library/std/src')
0 files changed, 0 insertions, 0 deletions
