about summary refs log tree commit diff
path: root/library/std/src
diff options
context:
space:
mode:
authorThePuzzlemaker <tpzker@thepuzzlemaker.info>2021-09-06 16:11:28 -0500
committerThePuzzlemaker <tpzker@thepuzzlemaker.info>2021-09-06 16:30:44 -0500
commit734209ed73507e214e49ef5cb7988af8901e74c7 (patch)
treec5d18c15ab264f37b15b6b09db90ed0129e7a930 /library/std/src
parent8ceea01bb442b9746a51b062ce25abbf46d866b2 (diff)
downloadrust-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