@@ -5,6 +5,7 @@ mod coherence_overlap;
5
5
mod consts;
6
6
mod decl_safety;
7
7
mod functions;
8
+ mod well_formed_trait_ref;
8
9
9
10
#[ test]
10
11
fn parser ( ) {
@@ -51,14 +52,16 @@ fn hello_world_fail() {
51
52
judgment `prove_wc_list { goal: {@ WellFormedTraitRef(Bar(!ty_0, !ty_1))}, assumptions: {Bar(!ty_0, !ty_1)}, env: Env { variables: [!ty_1, !ty_0], bias: Soundness } }` failed at the following rule(s):
52
53
the rule "some" failed at step #0 (src/file.rs:LL:CC) because
53
54
judgment `prove_wc { goal: @ WellFormedTraitRef(Bar(!ty_0, !ty_1)), assumptions: {Bar(!ty_0, !ty_1)}, env: Env { variables: [!ty_1, !ty_0], bias: Soundness } }` failed at the following rule(s):
54
- the rule "trait well formed" failed at step #2 (src/file.rs:LL:CC) because
55
- judgment `prove { goal: {Baz(!ty_1)}, assumptions: {Bar(!ty_0, !ty_1)}, env: Env { variables: [!ty_1, !ty_0], bias: Soundness }, decls: decls(222, [trait Foo <ty, ty> where {Bar(^ty0_1, ^ty0_0)}, trait Bar <ty, ty> where {Baz(^ty0_1)}, trait Baz <ty> ], [], [], [], [], [], {Bar, Baz, Foo}, {}) }` failed at the following rule(s):
56
- failed at (src/file.rs:LL:CC) because
57
- judgment `prove_wc_list { goal: {Baz(!ty_1)}, assumptions: {Bar(!ty_0, !ty_1)}, env: Env { variables: [!ty_1, !ty_0], bias: Soundness } }` failed at the following rule(s):
58
- the rule "some" failed at step #0 (src/file.rs:LL:CC) because
59
- judgment `prove_wc { goal: Baz(!ty_1), assumptions: {Bar(!ty_0, !ty_1)}, env: Env { variables: [!ty_1, !ty_0], bias: Soundness } }` failed at the following rule(s):
60
- the rule "trait implied bound" failed at step #0 (src/file.rs:LL:CC) because
61
- expression evaluated to an empty collection: `decls.trait_invariants()`"# ] ]
55
+ the rule "trait well formed" failed at step #3 (src/file.rs:LL:CC) because
56
+ judgment `prove_after { constraints: Constraints { env: Env { variables: [!ty_1, !ty_0], bias: Soundness }, known_true: true, substitution: {} }, goal: {Baz(!ty_1)}, assumptions: {Bar(!ty_0, !ty_1)} }` failed at the following rule(s):
57
+ the rule "prove_after" failed at step #1 (src/file.rs:LL:CC) because
58
+ judgment `prove { goal: {Baz(!ty_1)}, assumptions: {Bar(!ty_0, !ty_1)}, env: Env { variables: [!ty_1, !ty_0], bias: Soundness }, decls: decls(222, [trait Foo <ty, ty> where {Bar(^ty0_1, ^ty0_0)}, trait Bar <ty, ty> where {Baz(^ty0_1)}, trait Baz <ty> ], [], [], [], [], [], {Bar, Baz, Foo}, {}) }` failed at the following rule(s):
59
+ failed at (src/file.rs:LL:CC) because
60
+ judgment `prove_wc_list { goal: {Baz(!ty_1)}, assumptions: {Bar(!ty_0, !ty_1)}, env: Env { variables: [!ty_1, !ty_0], bias: Soundness } }` failed at the following rule(s):
61
+ the rule "some" failed at step #0 (src/file.rs:LL:CC) because
62
+ judgment `prove_wc { goal: Baz(!ty_1), assumptions: {Bar(!ty_0, !ty_1)}, env: Env { variables: [!ty_1, !ty_0], bias: Soundness } }` failed at the following rule(s):
63
+ the rule "trait implied bound" failed at step #0 (src/file.rs:LL:CC) because
64
+ expression evaluated to an empty collection: `decls.trait_invariants()`"# ] ]
62
65
)
63
66
}
64
67
@@ -132,14 +135,16 @@ fn basic_where_clauses_fail() {
132
135
judgment `prove_wc { goal: for <ty> @ WellFormedTraitRef(A(u32, ^ty0_0)), assumptions: {for <ty> A(u32, ^ty0_0)}, env: Env { variables: [], bias: Soundness } }` failed at the following rule(s):
133
136
the rule "forall" failed at step #2 (src/file.rs:LL:CC) because
134
137
judgment `prove_wc { goal: @ WellFormedTraitRef(A(u32, !ty_1)), assumptions: {for <ty> A(u32, ^ty0_0)}, env: Env { variables: [!ty_1], bias: Soundness } }` failed at the following rule(s):
135
- the rule "trait well formed" failed at step #2 (src/file.rs:LL:CC) because
136
- judgment `prove { goal: {B(!ty_0)}, assumptions: {for <ty> A(u32, ^ty0_0)}, env: Env { variables: [!ty_0], bias: Soundness }, decls: decls(222, [trait A <ty, ty> where {B(^ty0_1)}, trait B <ty> , trait WellFormed <ty> where {for <ty> A(u32, ^ty0_0)}], [], [], [], [], [], {A, B, WellFormed}, {}) }` failed at the following rule(s):
137
- failed at (src/file.rs:LL:CC) because
138
- judgment `prove_wc_list { goal: {B(!ty_0)}, assumptions: {for <ty> A(u32, ^ty0_0)}, env: Env { variables: [!ty_0], bias: Soundness } }` failed at the following rule(s):
139
- the rule "some" failed at step #0 (src/file.rs:LL:CC) because
140
- judgment `prove_wc { goal: B(!ty_0), assumptions: {for <ty> A(u32, ^ty0_0)}, env: Env { variables: [!ty_0], bias: Soundness } }` failed at the following rule(s):
141
- the rule "trait implied bound" failed at step #0 (src/file.rs:LL:CC) because
142
- expression evaluated to an empty collection: `decls.trait_invariants()`"# ] ]
138
+ the rule "trait well formed" failed at step #3 (src/file.rs:LL:CC) because
139
+ judgment `prove_after { constraints: Constraints { env: Env { variables: [!ty_1], bias: Soundness }, known_true: true, substitution: {} }, goal: {B(!ty_1)}, assumptions: {for <ty> A(u32, ^ty0_0)} }` failed at the following rule(s):
140
+ the rule "prove_after" failed at step #1 (src/file.rs:LL:CC) because
141
+ judgment `prove { goal: {B(!ty_0)}, assumptions: {for <ty> A(u32, ^ty0_0)}, env: Env { variables: [!ty_0], bias: Soundness }, decls: decls(222, [trait A <ty, ty> where {B(^ty0_1)}, trait B <ty> , trait WellFormed <ty> where {for <ty> A(u32, ^ty0_0)}], [], [], [], [], [], {A, B, WellFormed}, {}) }` failed at the following rule(s):
142
+ failed at (src/file.rs:LL:CC) because
143
+ judgment `prove_wc_list { goal: {B(!ty_0)}, assumptions: {for <ty> A(u32, ^ty0_0)}, env: Env { variables: [!ty_0], bias: Soundness } }` failed at the following rule(s):
144
+ the rule "some" failed at step #0 (src/file.rs:LL:CC) because
145
+ judgment `prove_wc { goal: B(!ty_0), assumptions: {for <ty> A(u32, ^ty0_0)}, env: Env { variables: [!ty_0], bias: Soundness } }` failed at the following rule(s):
146
+ the rule "trait implied bound" failed at step #0 (src/file.rs:LL:CC) because
147
+ expression evaluated to an empty collection: `decls.trait_invariants()`"# ] ]
143
148
)
144
149
}
145
150
0 commit comments