diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2021-12-18 14:49:42 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-12-18 14:49:42 +0100 |
| commit | cc043aa75f67ae7609fcc915982d0e0e9c3f712c (patch) | |
| tree | 91f4eda838c2518b319dbf17e8511eac4e3b1b89 /compiler/rustc_codegen_llvm/src/builder.rs | |
| parent | 53a95ea289941ffeacb95f2ca7a7a7f1a9aae679 (diff) | |
| parent | a1f91aa4104c330d5592c56653a1c68394251120 (diff) | |
| download | rust-cc043aa75f67ae7609fcc915982d0e0e9c3f712c.tar.gz rust-cc043aa75f67ae7609fcc915982d0e0e9c3f712c.zip | |
Rollup merge of #92037 - fee1-dead:fix_env_dmbic, r=oli-obk
Use a const ParamEnv when in default_method_body_is_const
r? `@oli-obk`
This PR fixes the param_env function to return `constness: Const` correctly for trait methods marked with `#[default_method_body_is_const]`. The snippet below is erroneously accepted by the compiler and has been fixed by this change. ([Playground](https://play.rust-lang.org/?version=nightly&mode=debug&edition=2021&gist=12dc6681b2eeee5f604203d96259eeb4))
```rust
#![feature(const_fn_trait_bound)]
#![feature(const_trait_impl)]
trait Tr {}
impl Tr for () {}
const fn foo<T>() where T: ~const Tr {}
pub trait Foo {
#[default_method_body_is_const]
fn foo() {
foo::<()>();
}
}
```
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/builder.rs')
0 files changed, 0 insertions, 0 deletions
