Skip to content

Commit 9805434

Browse files
committed
Clarify why 'static is free
1 parent 66e831e commit 9805434

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/traits/canonicalization.md

+5-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,11 @@ This query contains two unbound variables, but it also contains the
4242
lifetime `'static`. The trait system generally ignores all lifetimes
4343
and treats them equally, so when canonicalizing, we will *also*
4444
replace any [free lifetime](../appendix/background.html#free-vs-bound) with a
45-
canonical variable. Therefore, we get the following result:
45+
canonical variable (Note that `'static` is actually a _free_ lifetime
46+
variable here. We are not considering it in the typing context of the whole
47+
program but only in the context of this trait reference. Mathematically, we
48+
are not quantifying over the whole program, but only this obligation).
49+
Therefore, we get the following result:
4650

4751
```text
4852
?0: Foo<'?1, ?2>

0 commit comments

Comments
 (0)