Skip to content

Commit 2f32e3b

Browse files
compiler-errorslcnr
authored andcommitted
w
1 parent 91d5282 commit 2f32e3b

File tree

2 files changed

+10
-6
lines changed

2 files changed

+10
-6
lines changed

compiler/rustc_ast_passes/src/feature_gate.rs

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
use rustc_ast as ast;
22
use rustc_ast::visit::{self, AssocCtxt, FnCtxt, FnKind, Visitor};
33
use rustc_ast::{NodeId, PatKind, attr, token};
4+
use rustc_errors::E0001;
45
use rustc_feature::{AttributeGate, BUILTIN_ATTRIBUTE_MAP, BuiltinAttribute, Features};
56
use rustc_session::Session;
67
use rustc_session::parse::{feature_err, feature_warn};
@@ -650,10 +651,13 @@ fn check_new_solver_banned_features(sess: &Session, features: &Features) {
650651
.map(|feat| feat.attr_sp)
651652
{
652653
#[allow(rustc::symbol_intern_string_literal)]
653-
sess.dcx().emit_err(errors::IncompatibleFeatures {
654-
spans: vec![gce_span],
655-
f1: Symbol::intern("-Znext-solver=globally"),
656-
f2: sym::generic_const_exprs,
657-
});
654+
sess.dcx()
655+
.create_fatal(errors::IncompatibleFeatures {
656+
spans: vec![gce_span],
657+
f1: Symbol::intern("-Znext-solver=globally"),
658+
f2: sym::generic_const_exprs,
659+
})
660+
.with_code(E0001)
661+
.emit();
658662
}
659663
}

compiler/rustc_middle/src/ty/context.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3480,7 +3480,7 @@ impl<'tcx> TyCtxt<'tcx> {
34803480
}
34813481

34823482
pub fn next_trait_solver_globally(self) -> bool {
3483-
self.sess.opts.unstable_opts.next_solver.globally
3483+
self.sess.opts.unstable_opts.next_solver.globally && !self.features().generic_const_exprs()
34843484
}
34853485

34863486
pub fn next_trait_solver_in_coherence(self) -> bool {

0 commit comments

Comments
 (0)