Skip to content

Commit e6f78b8

Browse files
w
1 parent 0450ca4 commit e6f78b8

File tree

4 files changed

+10
-8
lines changed

4 files changed

+10
-8
lines changed

Cargo.lock

-1
Original file line numberDiff line numberDiff line change
@@ -4516,7 +4516,6 @@ dependencies = [
45164516
"rustc_session",
45174517
"rustc_span",
45184518
"rustc_transmute",
4519-
"rustc_type_ir",
45204519
"smallvec",
45214520
"thin-vec",
45224521
"tracing",

compiler/rustc_ast_passes/src/feature_gate.rs

+9-5
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};
@@ -648,10 +649,13 @@ fn check_new_solver_banned_features(sess: &Session, features: &Features) {
648649
.map(|feat| feat.attr_sp)
649650
{
650651
#[allow(rustc::symbol_intern_string_literal)]
651-
sess.dcx().emit_err(errors::IncompatibleFeatures {
652-
spans: vec![gce_span],
653-
f1: Symbol::intern("-Znext-solver=globally"),
654-
f2: sym::generic_const_exprs,
655-
});
652+
sess.dcx()
653+
.create_fatal(errors::IncompatibleFeatures {
654+
spans: vec![gce_span],
655+
f1: Symbol::intern("-Znext-solver=globally"),
656+
f2: sym::generic_const_exprs,
657+
})
658+
.with_code(E0001)
659+
.emit();
656660
}
657661
}

compiler/rustc_middle/src/ty/context.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -3335,7 +3335,7 @@ impl<'tcx> TyCtxt<'tcx> {
33353335
}
33363336

33373337
pub fn next_trait_solver_globally(self) -> bool {
3338-
self.sess.opts.unstable_opts.next_solver.globally
3338+
self.sess.opts.unstable_opts.next_solver.globally && !self.features().generic_const_exprs()
33393339
}
33403340

33413341
pub fn next_trait_solver_in_coherence(self) -> bool {

compiler/rustc_trait_selection/Cargo.toml

-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ rustc_parse_format = { path = "../rustc_parse_format" }
2020
rustc_session = { path = "../rustc_session" }
2121
rustc_span = { path = "../rustc_span" }
2222
rustc_transmute = { path = "../rustc_transmute", features = ["rustc"] }
23-
rustc_type_ir = { path = "../rustc_type_ir" }
2423
smallvec = { version = "1.8.1", features = ["union", "may_dangle"] }
2524
thin-vec = "0.2"
2625
tracing = "0.1"

0 commit comments

Comments
 (0)