diff options
| author | bors <bors@rust-lang.org> | 2022-01-12 17:57:50 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2022-01-12 17:57:50 +0000 |
| commit | 1bd4fdc943513e1004f498bbf289279c9784fc6f (patch) | |
| tree | 98e184cf410f6f6e4a029d070014e1443e0e23cd /compiler/rustc_const_eval/src/transform | |
| parent | 72e74d7b9cf1a7901650227e74650f1fcc797600 (diff) | |
| parent | 05dd1e4a2b6561b6daac38395883be6c782c2de1 (diff) | |
| download | rust-1bd4fdc943513e1004f498bbf289279c9784fc6f.tar.gz rust-1bd4fdc943513e1004f498bbf289279c9784fc6f.zip | |
Auto merge of #92811 - matthiaskrgr:rollup-wrctcef, r=matthiaskrgr
Rollup of 14 pull requests Successful merges: - #92328 (Tweak sentence in `transmute` docs) - #92432 (Error when selected impl is not const in constck) - #92506 (Document Box<T> FFI guarantee in 1.41.0 release notes) - #92699 (rustdoc: Display "private fields" instead of "fields omitted") - #92703 (RELEASES.md: Add 1.58 release note for `File::options` stabilization) - #92707 (Extended the note on the use of `no_run` attribute) - #92709 (Improve documentation for File::options to give a more likely example) - #92720 (Fix doc formatting for time.rs) - #92732 (Add note about upstream commit musl-patch-configure.diff is derived from) - #92742 (Add missing suffix for sidebar-items script path) - #92748 (Eliminate "boxed" wording in `std::error::Error` documentation) - #92754 (Update AsmArgs field visibility for rustfmt) - #92756 (:arrow_up: rust-analyzer) - #92764 (Fix rust logo style) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
Diffstat (limited to 'compiler/rustc_const_eval/src/transform')
| -rw-r--r-- | compiler/rustc_const_eval/src/transform/check_consts/check.rs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/compiler/rustc_const_eval/src/transform/check_consts/check.rs b/compiler/rustc_const_eval/src/transform/check_consts/check.rs index dd749c03934..de4824eb667 100644 --- a/compiler/rustc_const_eval/src/transform/check_consts/check.rs +++ b/compiler/rustc_const_eval/src/transform/check_consts/check.rs @@ -810,7 +810,7 @@ impl<'tcx> Visitor<'tcx> for Checker<'_, 'tcx> { param_env, Binder::dummy(TraitPredicate { trait_ref, - constness: ty::BoundConstness::ConstIfConst, + constness: ty::BoundConstness::NotConst, polarity: ty::ImplPolarity::Positive, }), ); @@ -829,6 +829,10 @@ impl<'tcx> Visitor<'tcx> for Checker<'_, 'tcx> { return; } Ok(Some(ImplSource::UserDefined(data))) => { + if let hir::Constness::NotConst = tcx.impl_constness(data.impl_def_id) { + self.check_op(ops::FnCallNonConst(None)); + return; + } let callee_name = tcx.item_name(callee); if let Some(&did) = tcx .associated_item_def_ids(data.impl_def_id) |
