@@ -46,16 +46,8 @@ impl<I: Interner> AggregateOps<I> for SlgContextOps<'_, I> {
46
46
}
47
47
} ;
48
48
49
- // If the answer is trivially true and thus subsumes all others, then that's a unique-enough answer for us :)
50
- if subst. value . is_identity_subst_with_no_constraints ( interner) {
51
- return Some ( Solution :: Unique ( subst) ) ;
52
- }
53
-
54
- tracing:: debug!( "subst = {:?}" , subst) ;
55
-
56
49
// Exactly 1 unconditional answer?
57
50
let next_answer = answers. peek_answer ( & should_continue) ;
58
- tracing:: debug!( "next_answer = {:?}" , next_answer) ;
59
51
if next_answer. is_quantum_exceeded ( ) {
60
52
if subst. value . subst . is_identity_subst ( interner) {
61
53
return Some ( Solution :: Ambig ( Guidance :: Unknown ) ) ;
@@ -91,11 +83,9 @@ impl<I: Interner> AggregateOps<I> for SlgContextOps<'_, I> {
91
83
break Guidance :: Unknown ;
92
84
}
93
85
94
- // FIXME: This may cause us to miss some "trivially true" answers maybe? Haven't investigated very deeply.
95
86
if !answers
96
87
. any_future_answer ( |ref mut new_subst| new_subst. may_invalidate ( interner, & subst) )
97
88
{
98
- tracing:: debug!( "any_future_answer: false" ) ;
99
89
break Guidance :: Definite ( subst) ;
100
90
}
101
91
@@ -106,17 +96,7 @@ impl<I: Interner> AggregateOps<I> for SlgContextOps<'_, I> {
106
96
}
107
97
108
98
let new_subst = match answers. next_answer ( & should_continue) {
109
- AnswerResult :: Answer ( answer1) => {
110
- if answer1
111
- . subst
112
- . value
113
- . is_identity_subst_with_no_constraints ( interner)
114
- {
115
- // If the answer is trivially true and thus subsumes all others, then that's a unique-enough answer for us :)
116
- return Some ( Solution :: Unique ( answer1. subst ) ) ;
117
- }
118
- answer1. subst
119
- }
99
+ AnswerResult :: Answer ( answer1) => answer1. subst ,
120
100
AnswerResult :: Floundered => {
121
101
// FIXME: this doesn't trigger for any current tests
122
102
self . identity_constrained_subst ( root_goal)
@@ -128,7 +108,6 @@ impl<I: Interner> AggregateOps<I> for SlgContextOps<'_, I> {
128
108
break Guidance :: Suggested ( subst) ;
129
109
}
130
110
} ;
131
- tracing:: debug!( "new_subst = {:?}" , new_subst) ;
132
111
subst = merge_into_guidance ( interner, & root_goal. canonical , subst, & new_subst) ;
133
112
num_answers += 1 ;
134
113
} ;
0 commit comments