@@ -9,7 +9,7 @@ use rustc_macros::HashStable_Generic;
99use rustc_session:: config:: ExpectedValues ;
1010use rustc_session:: lint:: builtin:: UNEXPECTED_CFGS ;
1111use rustc_session:: lint:: BuiltinLintDiagnostics ;
12- use rustc_session:: parse:: { feature_err, ParseSess } ;
12+ use rustc_session:: parse:: feature_err;
1313use rustc_session:: { RustcVersion , Session } ;
1414use rustc_span:: hygiene:: Transparency ;
1515use rustc_span:: { symbol:: sym, symbol:: Symbol , Span } ;
@@ -518,15 +518,15 @@ pub struct Condition {
518518/// Tests if a cfg-pattern matches the cfg set
519519pub fn cfg_matches (
520520 cfg : & ast:: MetaItem ,
521- sess : & ParseSess ,
521+ sess : & Session ,
522522 lint_node_id : NodeId ,
523523 features : Option < & Features > ,
524524) -> bool {
525525 eval_condition ( cfg, sess, features, & mut |cfg| {
526526 try_gate_cfg ( cfg. name , cfg. span , sess, features) ;
527- match sess. check_config . expecteds . get ( & cfg. name ) {
527+ match sess. parse_sess . check_config . expecteds . get ( & cfg. name ) {
528528 Some ( ExpectedValues :: Some ( values) ) if !values. contains ( & cfg. value ) => {
529- sess. buffer_lint_with_diagnostic (
529+ sess. parse_sess . buffer_lint_with_diagnostic (
530530 UNEXPECTED_CFGS ,
531531 cfg. span ,
532532 lint_node_id,
@@ -541,8 +541,8 @@ pub fn cfg_matches(
541541 ) ,
542542 ) ;
543543 }
544- None if sess. check_config . exhaustive_names => {
545- sess. buffer_lint_with_diagnostic (
544+ None if sess. parse_sess . check_config . exhaustive_names => {
545+ sess. parse_sess . buffer_lint_with_diagnostic (
546546 UNEXPECTED_CFGS ,
547547 cfg. span ,
548548 lint_node_id,
@@ -555,18 +555,18 @@ pub fn cfg_matches(
555555 }
556556 _ => { /* not unexpected */ }
557557 }
558- sess. config . contains ( & ( cfg. name , cfg. value ) )
558+ sess. parse_sess . config . contains ( & ( cfg. name , cfg. value ) )
559559 } )
560560}
561561
562- fn try_gate_cfg ( name : Symbol , span : Span , sess : & ParseSess , features : Option < & Features > ) {
562+ fn try_gate_cfg ( name : Symbol , span : Span , sess : & Session , features : Option < & Features > ) {
563563 let gate = find_gated_cfg ( |sym| sym == name) ;
564564 if let ( Some ( feats) , Some ( gated_cfg) ) = ( features, gate) {
565565 gate_cfg ( gated_cfg, span, sess, feats) ;
566566 }
567567}
568568
569- fn gate_cfg ( gated_cfg : & GatedCfg , cfg_span : Span , sess : & ParseSess , features : & Features ) {
569+ fn gate_cfg ( gated_cfg : & GatedCfg , cfg_span : Span , sess : & Session , features : & Features ) {
570570 let ( cfg, feature, has_feature) = gated_cfg;
571571 if !has_feature ( features) && !cfg_span. allows_unstable ( * feature) {
572572 let explain = format ! ( "`cfg({cfg})` is experimental and subject to change" ) ;
@@ -594,11 +594,11 @@ fn parse_version(s: Symbol) -> Option<RustcVersion> {
594594/// evaluate individual items.
595595pub fn eval_condition (
596596 cfg : & ast:: MetaItem ,
597- sess : & ParseSess ,
597+ sess : & Session ,
598598 features : Option < & Features > ,
599599 eval : & mut impl FnMut ( Condition ) -> bool ,
600600) -> bool {
601- let dcx = & sess. dcx ;
601+ let dcx = & sess. parse_sess . dcx ;
602602 match & cfg. kind {
603603 ast:: MetaItemKind :: List ( mis) if cfg. name_or_empty ( ) == sym:: version => {
604604 try_gate_cfg ( sym:: version, cfg. span , sess, features) ;
@@ -626,7 +626,7 @@ pub fn eval_condition(
626626 } ;
627627
628628 // See https://github.com/rust-lang/rust/issues/64796#issuecomment-640851454 for details
629- if sess. assume_incomplete_release {
629+ if sess. parse_sess . assume_incomplete_release {
630630 RustcVersion :: CURRENT > min_version
631631 } else {
632632 RustcVersion :: CURRENT >= min_version
0 commit comments